Systems and methods for non-invasive blood pressure measurement

ABSTRACT

Systems and methods for non-invasive blood pressure measurement are disclosed. In some embodiments, a system comprises a wearable member configured to generate first and second signals, and a blood pressure calculation system. The blood pressure calculation system a pre-processing module configured to filter noise from the signals, and a wave selection module configured to identify subsets of waves of the signals, a feature extraction module configured to generate sets of feature vectors form the subsets of waves, and a blood pressure processing module configured to calculate an arterial blood pressure value based on the sets of feature vectors and an empirical blood pressure calculation model, the empirical blood pressure calculation model configured to receive the sets of feature vectors as input values. The blood pressure calculation system further includes a communication module configured to provide a message including or being based on the arterial blood pressure value.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application claims the benefit of U.S. Provisional PatentApplication Ser. No. 62/262,540, filed Dec. 3, 2015, entitled“Prediction of Blood Pressure from PPG Data,” U.S. Provisional PatentApplication Ser. No. 62/262,532, filed Dec. 3, 2015, entitled “Validityand Classification for Biological Signal Recognition,” and U.S.Provisional Patent Application Ser. No. 62/262,342, filed Dec. 2, 2015,entitled “Respiratory Rate Estimation Using Multispectral Data,” whichare incorporated herein by reference.

BACKGROUND

Technical Field

Embodiments of the present inventions relate generally to blood metricsmeasurement. More specifically, embodiments of the present inventionsrelate to non-invasive blood pressure measurement.

Description of Related Art

Wearable activity monitoring devices are growing in popularity. Thesedevices aim to facilitate achieving a user's goal such as to loseweight, to increase physical activity, or simply to improve overallhealth. Many such devices may interface with computer software to allowvisualization of the recorded data. Nevertheless, most devices areevolved cousins of pedometers, which measure the number of steps a usertakes. Even though additional functions such as tallying the distance auser travels or calculating calorie consumptions may be added, thesedevices lack the ability to measure blood metrics.

Blood pressure is an important factor in both heart health and overallhealth. For example, elevated blood pressure may result in coronaryartery disease, heart failure and hypertrophy. Accordingly, bloodpressure monitoring has become an important component of patient health.Typically, blood pressure is monitored using a blood pressure gauge withan inflatable cuff. However, such devices are often uncomfortable andunable to provide continuous blood pressure measurement.

SUMMARY

An exemplary system comprises an energy transmitter, an energy receiver,and an analyzer. The energy transmitter may project energy at a firstwavelength and a second wavelength into tissue of a user, the firstwavelength and the second wavelength being associated with at least onenutrient of a set of nutrients in blood of the user. The energy receivermay generate a composite signal based on a fraction of the energy at thefirst wavelength and the second wavelength, the fraction of the energybeing received through the tissue of the user. The analyzer may separatethe composite signal into a first signal corresponding to the firstwavelength and a second signal corresponding to the second wavelength,and detect, in the blood of the user, a concentration of the at leastone nutrient of the set of nutrients based on the first signal and thesecond signal.

The fraction of the energy may be received by the energy receiver afterthe fraction of the energy is reflected by the tissue of the user. Thesystem may comprise a wearable member. The energy transmitter and theenergy receiver may be secured to the wearable member such that theenergy transmitter and the energy receiver are in contact or inproximity with the tissue. The analyzer may be further configured todetermine a set of blood metrics based on the first signal and thesecond signal, the concentration of at least one nutrient of the set ofnutrients being determined based on the determined set of blood metrics.The system may further comprise a user interface configured to displayat least some of the set of blood metrics. The analyzer may be furtherconfigured to compare a blood metric of the set of blood metric to athreshold and to generate an alert if the blood metric exceeds thethreshold. The set of blood metrics may comprise a blood glucoseconcentration.

The analyzer may be further configured to determine a first AC componentand a first DC component of the first signal, to determine a second ACcomponent and a second DC component of the second signal, wherein theconcentration of a nutrient of the set of nutrients is detected based onthe first AC component, the first DC component, the second AC component,and the second DC component. The system may further comprise a motiondetector configured to measure a level of motion, and the analyzer isconfigured to compare the level of motion to a threshold and to discounta measurement of the composite signal when the level of motion exceedsthe threshold. A nutrient of the set of nutrients may comprise glucose.

An exemplary method may comprise projecting energy at a first wavelengthand a second wavelength into tissue of a user, the first wavelength andthe second wavelength being associated with at least one nutrient of aset of nutrients in blood of the user, generating a composite signalbased on a fraction of the energy at the first wavelength and the secondwavelength, the fraction of the energy being received through the tissueof the user, separating the composite signal into a first signalcorresponding to the first wavelength and a second signal correspondingto the second wavelength, and detecting, in the blood of the user, aconcentration of the at least one nutrient of the set of nutrients basedon the first signal and the second signal.

Another exemplary system may comprise an energy transmitter, an energyreceiver, and an analyzer. The energy transmitter may be configured toproject energy at a first wavelength and a second wavelength into tissueof a user, the first wavelength and the second wavelength beingassociated with, in blood of the user, at least one component. The atleast one component being at least one of one of glucose, hemoglobin,triglycerides, cholesterol, bilirubin, protein, albumin, blood pH,Hematocrit, cortisol, and/or electrolytes. The energy receiver may beconfigured to generate a composite signal based on a fraction of theenergy at the first wavelength and the second wavelength, the fractionof the energy being received through the tissue of the user. Theanalyzer may be configured to separate the composite signal into a firstsignal corresponding to the first wavelength and a second signalcorresponding to the second wavelength, and to detect, in the blood ofthe user, a concentration of the at least one component based on thefirst signal and the second signal.

Other features and aspects of various embodiments will become apparentfrom the following detailed description, taken in conjunction with theaccompanying drawings, which illustrate, by way of example, the featuresof such embodiments.

Typically, blood pressure is measured non-invasively with asphygmomanometer. However, such devices are often uncomfortable and donot permit continuous blood pressure measurement. Some embodimentsdescribed herein include systems and methods for non-invasive continuousblood pressure measurement. For example, a blood metrics measurementapparatus may generate multi-channel signals (e.g., PPG signals) whichmay be provided to a blood pressure calculation system to calculatearterial blood pressure values (e.g., systolic blood value pressureand/or diastolic blood pressure value). More specifically, the bloodpressure calculation system (or the blood pressure measurementapparatus) may filter the multi-channel signals (e.g., to remove noisefrom the signals), select (or, “extract”) subsets of “high quality”waves from the multi-channel signals, select (or, “extract”) sets offeatures from each of the high quality waves, and generate sets offeature vectors based on the selected sets of features. In someembodiments, an empirical blood pressure model is used to calculatearterial blood pressure values based on the sets of feature vectors.

In various embodiments, a system comprises a wearable member and a bloodpressure calculation system. The wearable member may include an energytransmitter configured to project energy at a first wavelength andenergy at a second wavelength into tissue of a user, and an energyreceiver configured to generate a first signal based on a first receivedportion of the energy at the first wavelength and a second signal basedon a second received portion of the energy at the second wavelength, thefirst received portion of energy and the second received portion ofenergy each being received through the tissue of the user. The bloodpressure calculation system may include a pre-processing moduleconfigured to filter noise (e.g., motion related noise) from the firstsignal and the second signal, and a wave selection module configured toidentify a first subset of waves from a first set of waves of the firstsignal and a second subset of waves from a second set of waves of thesecond signal, each of the first subset of waves representing a separateapproximation of an average of the first set of waves over apredetermined amount of time and each of the second subset of wavesrepresenting a separate approximation of an average of the second set ofwaves over the predetermined amount of time. The blood pressurecalculation system may further include a feature extraction moduleconfigured to generate a first set of feature vectors and a second setof feature vectors, the first set of feature vectors generated from thefirst subset of waves, the second set of feature vectors generated fromthe second subset of waves, wherein each of the feature vectors of thefirst set of feature vectors and the second set of feature vectorsinclude measurement values and metric values, the measurement valuescorresponding to amplitude or location points of a particular wave, themetric values generated from metric functions that use at least one ofthe measurement values. The blood pressure calculation system mayadditionally include a blood pressure processing module configured tocalculate an arterial blood pressure value based on the first set offeature vectors, the second set of feature vectors, and an empiricalblood pressure calculation model, the empirical blood pressurecalculation model configured to receive the first set of feature vectorsand the second set of feature vectors as input values. The bloodpressure calculation system may further include a communication moduleconfigured to provide a message including or being based on the arterialblood pressure value.

In some embodiments, the pre-processing module is configured to filternoise from the first signal and second signal using an adaptive filterconfigured to remove motion noise from the first and second signals.

In some embodiments, the energy transmitter includes a first lightsource and a second light source, the first light source configured toproject the energy at the first wavelength, the second light sourceconfigured to project the energy at the second wavelength.

In some embodiments, the first light source and the second light sourceare spaced at a predetermined distance from each other, and each of thefirst and second light sources are associated with a differentcorresponding photodiode energy receiver. In related embodiments, themeasurement values comprise a transit time determined based on a timefor blood to transit the predetermined distance between the first andsecond light sources.

In some embodiments, the measurement values include any of wave peaklocations or amplitudes, or wave valley locations or amplitudes.

In some embodiments, the measurement values include any of an associatedwave's first or higher order derivative peak locations or amplitudes,the associated wave's first or higher order derivative valley locationsor amplitudes, or first or higher order moments of the associated wave.

In some embodiments, the metric functions include one or more particularmetric functions that calculate a distance between two measurementvalues.

In some embodiments, the energy projected by the first light source andthe energy projected by second light source each have the samewavelength. In related embodiments, the feature extraction module isfurther configured to determine a phase shift between the first signaland the second signal; calculate, based on the phase shift, any of apulse wave velocity or a pulse transit time based on the predetermineddistance; and the blood pressure calculation module is furtherconfigured to calculate the arterial blood pressure value based on firstset of feature vectors, the second set of feature vectors, any of thepulse wave velocity or the pulse transit time, the empirical bloodpressure calculation model, the empirical blood pressure calculationmodel further configured to receive the first set of feature vectors,the second set of feature vectors, and any of the pulse wave velocity orthe pulse transit time as input.

In some embodiments, the first signal and the second signal eachcomprise a photoplethysmogram (PPG) signal

In various embodiments, a method comprises projecting, at an energytransmitter, energy at a first wavelength and energy at a secondwavelength into tissue of a user; generating, at the energy transmitter,a first signal based on a first received portion of the energy at thefirst wavelength and a second signal based on a second received portionof the energy at the second wavelength, the first received portion ofenergy and the second received portion of energy each being receivedthrough the tissue of the user; filtering, at a blood pressurecalculation system, noise from the first signal and second signal;identifying, at the blood pressure calculation system, a first subset ofwaves from a first set of waves of the first signal and a second subsetof waves from a second set of waves of the second signal, each of thefirst subset of waves representing a separate approximation of anaverage of the first set of waves over a predetermined amount of timeand each of the second subset of waves representing a separateapproximation of an average of the second set of waves over thepredetermined amount of time; generating, at the blood pressurecalculation system, a first set of feature vectors and a second set offeature vectors, the first set of feature vectors generated from thefirst subset of waves, the second set of feature vectors generated fromthe second subset of waves, wherein each of the feature vectors of thefirst set of feature vectors and the second set of feature vectorsinclude measurement values and metric values, the measurement valuescorresponding to amplitude or location points of a particular wave, themetric values generated from metric functions that use at least one ofthe measurement values; calculating, at the blood pressure calculationsystem, an arterial blood pressure value based on the first set offeature vectors, the second set of feature vectors, and an empiricalblood pressure calculation model, the empirical blood pressurecalculation model configured to receive the first set of feature vectorsand the second set of feature vectors as input values; and providing,from the blood pressure calculation system, a message including or beingbased on the arterial blood pressure value.

In some embodiments, the filtering noise from the first signal andsecond signal comprises filtering noise from the first signal and secondsignal using an adaptive filter configured to remove motion noise fromthe first signal and the second signal.

In some embodiments, the energy transmitter includes a first lightsource and a second light source, the first light source configured toproject the energy at the first wavelength, the second light sourceconfigured to project the energy at the second wavelength. In relatedembodiments, the first light source and the second light source arespaced at a predetermined distance from each other, and each of thefirst and second light sources are associated with a differentcorresponding photodiode energy receiver.

In some embodiments, the measurement values comprise a transit timedetermined based on a time for blood to transit the predetermineddistance between the first and second light sources.

In some embodiments, the measurement values include any of wave peaklocations or amplitudes, or wave valley locations or amplitudes.

In some embodiments, the measurement values include any of an associatedwave's first or higher order derivative peak locations or amplitudes,the associated wave's first or higher order derivative valley locationsor amplitudes, or first or higher order moments of the associated wave.

In some embodiments, the metric functions include one or more particularmetric functions that calculate a distance between two measurementvalues.

In some embodiments, the energy projected by the first light source andthe energy projected by second light source each have the samewavelength. In related embodiments, the feature extraction module isfurther configured to determine a phase shift between the first signaland the second signal; calculate, based on the phase shift, any of apulse wave velocity or a pulse transit time based on the predetermineddistance; and the blood pressure calculation module is furtherconfigured to calculate the arterial blood pressure value based on firstset of feature vectors, the second set of feature vectors, any of thepulse wave velocity or the pulse transit time, the empirical bloodpressure calculation model, the empirical blood pressure calculationmodel further configured to receive the first set of feature vectors,the second set of feature vectors, and any of the pulse wave velocity orthe pulse transit time as input.

In various embodiments, a system comprises a communication interfaceconfigured to receive a first signal and a second signal, the firstsignal being based on a first received portion of energy having beenpreviously projected at a first wavelength into tissue of a user, thesecond signal being based on a second received portion of energy havingbeen previously projected at a second wavelength into the tissue of theuser; a pre-processing module configured to remove noise from the firstsignal and the second signal; a wave selection module configured toidentify a first subset of waves from the first set of waves of a firstsignal and a second subset of waves from a second set of waves of thesecond signal, each of the first subset of waves representing a separateapproximation of an average of the first set of waves over apredetermined amount of time and each of the second subset of wavesrepresenting a separate approximation of an average of the second set ofwaves over the predetermined amount of time; a feature extraction moduleconfigured to generate a first set of feature vectors and a second setof feature vectors, the first set of feature vectors generated from thefirst subset of waves, the second set of feature vectors generated fromthe second subset of waves, wherein each of the feature vectors of thefirst set of feature vectors and the second set of feature vectorsinclude measurement values and metric values, the measurement valuescorresponding to amplitude or location points of a particular wave, themetric values generated from metric functions that use at least onemeasurement value; a blood pressure processing module configured tocalculate an arterial blood pressure value based on the first set offeature vectors, the second set of feature vectors, and an empiricalblood pressure calculation model, the empirical blood pressurecalculation model configured to receive the first set of feature vectorsand the second set of feature vectors as input values; and acommunication module configured to provide a message including or beingbased on the arterial blood pressure value.

In various embodiments, a system comprises a processor; and memorystoring instructions that, when executed by the processor, cause theprocessor to: receive a first signal and a second signal, the firstsignal being based on a first received portion of energy having beenpreviously projected at a first wavelength into tissue of a user, thesecond signal being based on a second received portion of energy havingbeen previously projected at a second wavelength into the tissue of theuser; filter noise (e.g., motion related noise) from the first signaland the second signal; identify a first subset of waves from a first setof waves of the first signal and a second subset of waves from a secondset of waves of the second signal, each of the first subset of wavesrepresenting a separate approximation of an average of the first set ofwaves over a predetermined amount of time and each of the second subsetof waves representing a separate approximation of an average of thesecond set of waves over the predetermined amount of time; generate afirst set of feature vectors and a second set of feature vectors, thefirst set of feature vectors generated from the first subset of waves,the second set of feature vectors generated from the second subset ofwaves, wherein each of the feature vectors of the first set of featurevectors and the second set of feature vectors include measurement valuesand metric values, the measurement values corresponding to amplitude orlocation points of a particular wave, the metric values generated frommetric functions that use at least one of the measurement values;calculate an arterial blood pressure value based on the first set offeature vectors, the second set of feature vectors, and an empiricalblood pressure calculation model, the empirical blood pressurecalculation model configured to receive the first set of feature vectorsand the second set of feature vectors as input values; and provide amessage including or being based on the arterial blood pressure value.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram illustrating an example environment utilizinga multispectral blood metrics measurement apparatus in accordance withvarious embodiments.

FIG. 2 is a block diagram illustrating an exemplary multispectral bloodmetrics measurement apparatus, such as the multispectral blood metricsmeasurement apparatus illustrated in FIG. 1.

FIG. 3 illustrates an exemplary flow diagram of a method of measuringblood metrics in accordance with an embodiment of the presentapplication.

FIG. 4 illustrates an exemplary apparatus for measuring various bloodmetrics in accordance with an embodiment of the present application.

FIG. 5 illustrates a display of an assessment of a current health indexderived from data collected from or with a multispectral blood metricsmeasurement apparatus in various embodiments.

FIG. 6 illustrates a display of an assessment of an overall healthindex, derived from data collected from or with a multispectral bloodmetrics measurement apparatus in various embodiments.

FIG. 7 illustrates a display of an assessment of an overall healthindex, derived from data collected from or with a multispectral bloodmetrics measurement apparatus in various embodiments.

FIG. 8 is a block diagram illustrating an exemplary digital device thatcan be utilized in the implementation of various embodiments.

FIG. 9 depicts a block diagram of a system and environment fornon-invasive blood pressure measurement according to some embodiments.

FIG. 10A depicts a block diagram of a blood metrics measurementapparatus according to some embodiments.

FIG. 10B depicts a block diagram of a sensor system according to someembodiments.

FIG. 11 depicts a flowchart of an example method of operation of a bloodmetrics measurement apparatus according to some embodiments.

FIG. 12 depicts a block diagram of a user device according to someembodiments.

FIG. 13 depicts a flowchart of an example method of operation of a userdevice according to some embodiments.

FIG. 14 depicts a block diagram of a blood pressure calculation systemaccording to some embodiments.

FIG. 15A depicts a flowchart of an example method of operation of ablood pressure calculation system according to some embodiments.

FIG. 15B depicts a flowchart of an example method of pre-processing (or,“filtering”) a signal according to some embodiments.

FIG. 15C depicts a blocks diagram of an example pre-processing systemfor filtering signals according to some embodiments.

FIG. 16A depicts a flowchart of an example method for extracting highquality waves according to some embodiments.

FIG. 16B depicts a flowchart of an example method for extracting highquality waves using a Gaussian mixture model according to someembodiments.

FIG. 16C depicts a flowchart of an example method of method forextracting high quality waves using a group similarity model accordingto some embodiments.

FIG. 17 depicts a block diagram of a blood metrics server according tosome embodiments.

FIGS. 18-20 depict flowcharts of example methods of operation of a bloodmetrics server according to some embodiments.

FIG. 21 depicts an example noisy PPG signal and an example filtered PPGsignal according to some embodiments.

FIG. 22 depicts an example set of waves of a PPG signal and an examplehigh quality wave selected from the set of waves according to someembodiments.

FIG. 23 depicts example feature points of a wave according to someembodiments.

FIG. 24 depicts an example feature vector according to some embodiments.

FIGS. 25A-C show an example selected high quality wave, the firstderivative of the selected high quality wave, and the second derivativeof the selected high quality wave according to some embodiments.

FIG. 26 depicts example tree structures of an example empirical bloodpressure calculation model according to some embodiments.

FIG. 27 depicts an example bi-Gaussian mixture model for a PPG signalaccording to some embodiments.

FIG. 28 depicts an example PPG signal including multiple reflectionsaccording to some embodiments.

DETAILED DESCRIPTION

Biometrics including blood metrics may be measured by minimally invasiveprocedures to address medical conditions such as diabetes or in thediagnosis and discovery of diseases. Minimal-invasive procedure baseddevices may have the advantages of reducing costs and decreasing theneed for invasive methods, thereby increasing the comfort and well-beingof users and patients. Even though these devices have revolutionizedpatient care, they have only been described in, and approved for,medical purposes. Minimal-invasive procedure based devices are usuallyout of reach for the general public because they are designed formedical uses rather than non-medical purposes such as fitness,well-being, and quality of life.

Personal devices such as sphygmomanometers or pulse oximeters measureblood pressure or oxygen levels, respectively, on a per-request basis.They usually cannot measure blood metrics real time or periodically.Real-time blood metrics data (e.g., high resolution measurements, ormeasurements over long periods of time) may allow these devices tofacilitate users monitoring and controlling their energy levels and/ormetabolism. Nutritionists, people suffering from obesity, peopledesiring to eat healthier, fitness enthusiasts, semi-professionalathletes, people likely to have hypoglycemia, or the vast majority ofthe general population can benefit from these devices.

In various embodiments, a multispectral blood metric measurementapparatus monitors blood metrics, fitness, and/or metabolism levels ofvarious users in a non-invasive manner. The multispectral blood metricmeasurement apparatus may be, for example, wearable technology. Themultispectral blood metric measurement apparatus may measure any numberof blood metrics. Blood metrics may include, for example, variousnutrient blood concentrations. Blood metrics may be, for example,monitored, stored, tracked, and/or analyzed.

FIG. 1 is a block diagram illustrating an example environment 100utilizing a multispectral blood metrics measurement apparatus 102 inaccordance with various embodiments. As shown in FIG. 1, the exampleenvironment 100 may comprise a multispectral blood metrics measurementapparatus 102, one or more user systems 104, an optional analysis system108, and a computer network 106 communicatively coupling together eachof the multispectral blood metrics measurement apparatus 102, one ormore user devices 110, 112, and 114 (depicted as user system 104),and/or the analysis system 108. As shown, a user system 104 may includea smartphone 110 (e.g., iPhone®), a computer 112 (e.g., a personalcomputer), and/or a tablet 114 (e.g., iPad®), through the computernetwork 106 (e.g., a Bluetooth® 4.0 personal area network), can eitherinteract directly or indirectly with the blood metrics measurementapparatus 102.

The multispectral blood metrics measurement apparatus 102 may measurehealth or metabolism predictors non-invasively. The multispectral bloodmetrics measurement apparatus 102 may measure blood metrics such asconcentrations of various nutrients over time, deliver energy intotissues of various body parts of a user, track a user's behaviorpattern, detect motion, communicate various blood metric measurements,and/or receive a user's instructions. For instance, through the computernetwork 106, the multispectral blood metrics measurement apparatus 102may transmit one or more blood metric measurements to, or receiveinstructions from, the user system 104 or the multispectral bloodmeasurement system 108 such as which health or metabolism predictor tomeasure.

In some embodiments, the multispectral blood metric 102 measurementapparatus may project energy into tissue of a user and detect energyreflected from and/or transmitted through tissue of the user (e.g., thewearer of the multispectral blood metric measurement apparatus 102). Theprojected energy may be at multiple wavelengths that are associated withthe blood metrics of interest to a user. The detected energy may be afraction of the energy that is projected into the tissue. Energy atdifferent wavelengths may be absorbed at a different rate that isrelated to a user's body state. The user's body state (e.g., heart rate,blood pressure, nutrient level, or the like) determines the amount ofabsorbed energy. Accordingly, energy at different wavelengths may beabsorbed at different levels by a user's body. The fraction of energyreceived (e.g., that is reflected by the tissue or transmitted throughthe tissue) may be used to generate signals (e.g., composite signals) atdifferent levels. These signals may provide information of the user'sbody state. This information may be obtained by analyzing waveforms ofthe signal in the time domain and/or the frequency domain.

In various embodiments, the multispectral blood metric measurementapparatus 102 may measure many metrics, including, but not limited to,skin conductivity, pulse, oxygen blood levels, blood pressure, bloodglucose level, glycemic index, insulin index, Vvo2max, fat bodycomposition, protein body composition, blood nutrient level (e.g.,iron), body temperature, blood sodium levels, and/or naturally-producedchemical compound level (e.g., lactic acid). Nutrients may be determinedbased on the blood metrics to be measured. Nutrients may be measured mayinclude, but are not limited to, glucose, hemoglobin, triglycerides,cholesterol, bilirubin, protein, albumin (i.e., egg white), and/orelectrolytes (e.g., sodium, potassium, chloride, bicarbonate, etc.)

It will be appreciated that the user's body state may change dynamicallyand energy at a wavelength may be absorbed differently by a user overthe time. By monitoring and tracking detected energy from the user'sbody, a user's health or condition may be more tracked. Systems andmethods described herein may monitor and store blood metrics includingconcentrations of various nutrients. A user's history health records maybe generated by using blood metrics measured at different times. In someembodiments, blood metrics measured a given time point may be comparedto the history health records to detect any abnormal health conditions.The multispectral blood metric measurement apparatus may comprise a userinterface where a user may input blood metrics of interest, be presentedwith various health reports, and/or be alerted with abnormal healthconditions.

A user may comfortably wear a multispectral blood metric measurementapparatus 102 over time. The multispectral blood metric measurementapparatus 102 may comprise lightweight components. The multispectralblood metric measurement apparatus 102 may be made of hypoallergenicmaterials. The multispectral blood metric measurement apparatus 102 maybe flexibly built so that it could fit various body parts (e.g., wrist,earlobe, ankle, or chest) of a user.

In accordance with some embodiments, the computer network 106 may beimplemented or facilitated using one or more local or wide-areacommunications networks, such as the Internet, WiFi networks, WiMaxnetworks, private networks, public networks, personal area networks(“PAN”), and the like. In some embodiments, the computer network 106 maybe a wired network, such as a twisted pair wire system, a coaxial cablesystem, a fiber optic cable system, an Ethernet cable system, a wiredPAN constructed with USB and/or FireWire connections, or other similarcommunication network. Alternatively, the computer network 106 may be awireless network, such as a wireless personal area network, a wirelesslocal area network, a cellular network, or other similar communicationnetwork. Depending on the embodiment, some or all of the communicationconnections with the computer network 106 may utilize encryption (e.g.,Secure Sockets Layer [SSL]) to secure information being transferredbetween the various entities shown in the example environment 100.

Although FIG. 1 depicts a computer network 106 supporting communicationbetween different digital devices, it will be appreciated that themultispectral blood metrics measurement apparatus may be directlycoupled (e.g., over a cable) with any or all of the user devices 110,112, and 114.

The user devices 110-114 may include any digital device capable ofexecuting an application related to measuring blood metrics, presentingan application user interface through a display and/or communicatingwith various entities in the example environment 100 through thecomputer network 106. For instance, through the computer network 106,the user device 110 may receive one or more blood metric measurementsfrom the multispectral blood metrics measurement apparatus 102, trackand store the blood metric measurements, analyze the blood metricmeasurements, and/or provide recommendations based on the blood metricmeasurements. An application user interface may facilitate interactionbetween a user of the user system 104 and an application running on theuser system 104.

In various embodiments, any of user devices 110-114 may perform analysisof the measurements from the multispectral blood metrics measurementapparatus 102, display results, provide reports, display progress,display historic readings, track measurements, track analysis, providealerts, and/or the like.

The analysis system 108 may be any form of digital device capable ofexecuting an analysis application for analyzing and/or measuring bloodmetrics. In some embodiments, the analysis system 108 may generatereports or generate alerts based on analysis or measurement of bloodmetrics. For instance, through the computer network 106, the analysissystem 108 may receive one or more blood metric measurements from themultispectral blood metrics measurement apparatus 102, track and storeblood metric measurements, analyze blood metric measurements, and/orprovide recommendations based on the analysis. An applicationprogramming interface may facilitate interaction between a user, theuser devices 110-114, and/or the multispectral blood metrics measurementapparatus 110 with the analysis system 108.

Computing devices (e.g., digital devices) may include a mobile phone, atablet computing device, a laptop, a desktop computer, personal digitalassistant, a portable gaming unit, a wired gaming unit, a thin client, aset-top box, a portable multi-media player, or any other type of networkaccessible user device known to those of skill in the art. Further, theanalysis system 108 may comprise of one or more servers, which may beoperating on or implemented using one or more cloud-based services(e.g., System-as-a-Service [SaaS], Platform-as-a-Service [PaaS], orInfrastructure-as-a-Service [IaaS]).

It will be understood that for some embodiments, the components or thearrangement of components may differ from what is depicted in FIG. 1.

Each of the multispectral blood metrics measurement apparatus 102, oneor more user devices 110, 112, and 114, and the analysis system 108 maybe implemented using one or more digital devices. An exemplary digitaldevice is described regarding FIG. 8.

FIG. 2 is a block diagram illustrating an exemplary multispectral bloodmetrics measurement apparatus 200, such as the multispectral bloodmetrics measurement apparatus 102 illustrated in FIG. 1. Themultispectral blood metrics measurement apparatus 200 comprises ananalyzer 202, an energy transmitter 204, and an energy receiver 206.Various embodiments may comprise a wearable member. The wearable membermay include, for example, a bracelet, glasses, necklace, ring, anklet,belt, broach, jewelry, clothing, or any other member of combination ofmembers that allow the multispectral blood metrics measurement apparatus200 to be close to or touch a body of the wearer.

The energy transmitter 204 and the energy receiver 206 may be secured tothe wearable member such that the energy transmitter and the energyreceiver may make contact or be in proximity with tissues (e.g., skin)of a user. The analyzer 202 may be coupled to the energy transmitter 204and the energy receiver 206. In further embodiments, the multispectralblood metrics measurement apparatus 200 may comprise a communicationmodule (not shown). The communication module may be coupled to theanalyzer 202. The blood metrics measurement apparatus 200 may furthercomprise a driver (not shown) and a power source (not shown). The drivermay be coupled to the energy transmitter 204 and the analyzer 202. Theanalyzer 202 may be coupled to the energy transmitter 204 via thedriver. The power source may be coupled to the energy transmitter 204via the driver. The blood metrics measurement apparatus 200 may furthercomprise an Analog-to-Digital Converter (“ADC”) (not shown). The ADC maybe coupled to the energy receiver 206 and the analyzer 202. In someembodiments, the blood metrics measurement apparatus 200 may comprise amotion sensor (e.g., an accelerometer, gyroscope, global positioningsystem, or the like) (not shown). The motion sensor may be coupled tothe analyzer 202.

In various embodiments, the energy transmitter 204 emits energyincluding, but not limited to, light, into the body of the user. Theenergy produced by the energy transmitter may be in the direction ofentering tissues. For example, the energy produced by the energytransmitter 204 is in a direction 251 entering the tissue 210. In someembodiments, the energy transmitter 204 emits energy or light atdifferent wavelengths. The energy transmitter 204 may comprise anynumber of light emission diodes (“LEDs”). In some embodiments, theenergy transmitter 204 comprises at least two LEDs. Each LED may beconfigured to emit energy at one or more wavelengths. In anotherexample, each LED may emit light with a peak wavelength centered arounda wavelength. In one example, the energy transmitter 204 may emit lightwith a peak wavelength centered around 500 nm to 1800 nm.

Each wavelength may correspond to one or more blood metrics of interestand/or one or more nutrients. It will be appreciated that differentcomponents of the blood and/or different nutrients may absorb energy atdifferent wavelengths. In various embodiments, a controller, driver,analyzer 202, or the like may receive a blood metric or nutrient ofinterest (e.g., from a user of the multispectral blood metricsmeasurement apparatus 200 and/or a user device not shown). Thecontroller, driver, analyzer 202 or the like may associate the bloodmetric and/or nutrient of interest with one or more wavelengths andconfigure one or more of the LEDs to emit energy of at least one of theone or more wavelengths. For example, the analyzer 202 may command thedriver to deliver electric power to one LED that is configured to emitlight at the desired wavelength.

The energy receiver 206 may detect energy associated with the energyprovided by the LEDs from tissues (e.g., skin) of the user. In thisexample, received and/or detected energy is in the direction 252 thatleaves from the tissue 210. In various embodiments, the energy receiver206 may detect energy from the body of the user that is a fraction ofthe energy produced by the energy transmitter 204.

The energy transmitter 204 and the energy receiver 206 may be configuredsuch that the energy receiver 206 detects reflected energy from tissuesof the user of the multispectral blood metrics measurement apparatus200. For example, the energy transmitter 204 and the energy receiver 206may be configured to be disposed on one surface or side of a user'stissue. The energy transmitter 204 and the energy receiver 206 may beconfigured such that the energy receiver 206 detects energy from theenergy transmitter 204 that passes through or reflects from the user'stissues. In some embodiments, the energy transmitter 204 and the energyreceiver 206 may be configured to be disposed on different (e.g.,opposite) surfaces or sides of a users' tissue.

Energy detected from tissues of a user may be detected by the energyreceiver 206. The energy receiver 206 may be configured to generate asignal in response to the detected energy. In some embodiments, theenergy receiver 206 may be triggered by the energy received to generatean output which may be dependent or partially dependent upon the amountof energy received. The energy receiver 206 may be configured togenerate a signal (e.g., an electric current, or an electric voltage) inresponse to the energy received from the tissues.

The signal generated by the energy receiver 206 may be associated withone or more blood metrics and/or nutrients of interest. Energy atdifferent wavelengths may be absorbed at a different rate that isrelated to a user's body state. The user's body state (e.g., heart rate,blood pressure, nutrient level, or the like) may determine the amount ofenergy absorbed by the body. Accordingly, energy from the user's body atdifferent wavelengths may be detected at different levels therebycausing different responses of the energy receiver 206. The energyreceiver 206 may, for example, output signals based on the level of theenergy received.

The energy receiver 206 may provide information associated with theuser's body state. Blood metric information may be determined (e.g., bythe analyzer 202) from the output signal of the energy receiver 206.

The energy receiver 206 may comprise a set of photodetectors (e.g., aphoto diode, or a photo transistor) which are configured to output asignal dependent upon photons or the like from the energy transmitter204 that passed through tissues of the user.

In various embodiments, the output signal of the energy receiver 206 isa composite of multiple signals. Each signal of the composite may beassociated with energy at a wavelength which may be a portion (orfraction) of the total energy emitted by the energy transmitter 204.

The energy transmitter 204 may be configured to generate energy at a setof wavelengths. In some embodiments, the energy transmitter 204 isconfigured to generate energy such that energy at different wavelengthsis generated sequentially and/or periodically. The energy transmitter204 may be configured to generate energy at each particular wavelengthuntil energy at all wavelengths of the set is generated. The period oftime for the energy transmitter 204 to generate energy at allwavelengths is a generation period. Subsequent to completion of thegeneration period, the energy transmitter 204 may start a new generationperiod thereby allowing multiple measurements.

In some embodiments, the blood metrics measurement apparatus 200 may beor include the blood metrics measurement apparatus 102 described withregard to FIG. 1.

FIG. 3 illustrates an exemplary flow diagram of a method 300 ofmeasuring blood metrics in accordance with an embodiment of the presentapplication. At step 302, energy transmitter 204 generates and deliversenergy at different wavelengths into tissues (e.g., skin) of a user.Different wavelengths may be associated with any number of nutrients,which may be associated with the blood metrics to be measured.

In some embodiments, a user may define various blood metrics and/ornutrients to be measured. Referring back to FIG. 1, a list of bloodmetrics and/or nutrients may be selected from a user interface (e.g.,displayed on an interface of the multispectral blood metrics measurementapparatus 102, on a user device 110-114, or through the analysis system108). The user may select one or more blood metrics and/or nutrients tobe measured.

In some embodiments, a user may define a set of blood metrics to bemeasured on the user system 104; the multispectral blood metricsmeasurement apparatus 102 may provide the blood metrics to be measuredto the user system 104. For example, on any device of the user system104, a user may define one or more blood metrics by selecting one ormore blood metrics from a list of blood metrics provided, for example,via the user interface.

As discussed herein, the multispectral blood metrics measurementapparatus 200 may measure, but is not limited to, skin conductivity,pulse, oxygen blood levels, blood pressure, blood glucose level,glycemic index, insulin index, Vvo2max, fat body composition, proteinbody composition, blood nutrient level (e.g., iron), body temperature,blood sodium levels, or naturally-produced chemical compound level(e.g., lactic acid). Nutrients may be determined based on the bloodmetrics to be measured. The multispectral blood metrics measurementapparatus 200 may measure nutrients, but is not limited to, glucose,hemoglobin, triglycerides, cholesterol, bilirubin, protein, albumin(i.e., egg white), or electrolytes (e.g., sodium, potassium, chloride,bicarbonate, or the like). The multispectral blood metrics measurementapparatus 200 may also measure oxygen, cortisol, and Hematocrit, forexample (e.g., blood components).

In various embodiments, one or more wavelengths may be associated with anutrient or a combination of blood components or molecules. In someembodiments, a number of wavelengths generated by the energy transmitter204 are the number of blood components or molecules to be measured plusone. For example, when a total number of five (5) blood componentsand/or molecules are to be measured, a total number of six (6)wavelengths may be determined based on the blood components and/ormolecules to be measured. Similarly, it will be appreciated that one ormore wavelengths may be associated with a nutrient or a combination ofnutrients. In some embodiments, a number of wavelengths generated by theenergy transmitter 204 are the number of nutrients to be measured plusone. For example, when a total number of three (3) nutrients are to bemeasured, a total number of four (4) wavelengths may be determined basedon the nutrients to be measured.

In some embodiments, the multispectral blood metrics measurementapparatus 200, user devices 110-114, and/or analysis system 108 maycomprise a reference table of blood components, molecules, and/ornutrients and wavelengths corresponding to the blood components,molecules, and/or nutrients. A wavelength may be unique to or moregenerally associated with a nutrient. A reference wavelength may beunique to or more generally associated with a combination of nutrientsto be measured. As such, wavelength(s) may be determined by looking upeach blood components, molecules, and/or nutrients that is to bemeasured. Energy at the determined wavelengths may be transmitted by theenergy transmitter 204 into the body.

In various embodiments, in a predetermined time duration, energy at alldesired wavelengths may be generated. For each wavelength, thecorresponding energy may be generated for a time period equal to apredetermined time duration divided by the number of wavelengths. Forexample, four (4) wavelengths may be determined and the predeterminedtime duration is two (2) seconds. Accordingly, energy for eachwavelength may be generated for a duration of half (0.5) second.

At step 304, the energy receiver 206 detects a fraction of the energytransmitted into the user's tissue by the energy transmitter 204. Theenergy receiver 206 may generate a signal based on the fraction ofenergy detected (e.g., based on the amount of the energy detected). Inone example, energy detected at step 304 may be a fraction of the energygenerated at step 302 reflected by the tissue. Energy detected at step302 may be a fraction of the energy generated at step 302 that passesthrough the tissue (e.g., other undetected energy may be absorbed bytissue and/or otherwise blocked). The output signal of the energyreceiver 206 may be an electric current or an electric voltage, of whichthe amplitude may be related to the amount of the energy detected. Invarious embodiments, steps 302 and 304 are performed simultaneously.That is, energy generation and detection may be performed approximatelysimultaneously.

In various embodiments, the output signal generated by the energyreceiver 206 is a composite signal of multiple signals, each of whichcorresponds to one or more wavelengths. The output signal produced atstep 306 may be divided into individual signals, each of which is may beassociated with one or more wavelengths.

In various embodiments, analysis of the signals from the energy receiver206 may identify abnormal measurements. For example, each of themeasurement may be compared to a predetermined value. If the differencebetween the measurement and the predetermined value is above (or below)a threshold, then the measurement may be determined to be abnormal. Anabnormal value may trigger additional analysis or an alert. In someembodiments, an abnormal value is ignored (e.g., as possibly effected bynoise caused by movement of the energy transmitter 204 and/or the energyreceiver 206). In various embodiments, the abnormal value may bediscounted (e.g., the weight of the value reduced). The degree ofdiscount may be based, for example, on information from an accelerometer(e.g., a large acceleration may indicate that the abnormal value shouldbe significantly discounted) and/or based on historical values. It willbe appreciated that the degree of discount may be based on any number offactors.

In some embodiments, measurements may be averaged over a period of time.A Kalman filer (e.g., a nonlinear, unscented Kalman filter) may beapplied to any number of measurements or averaged measurements. A motionmeasurement (e.g., a measurement by an accelerometer) may be considered.Upon determining a measurement is abnormal, the motion measurement forthat time point may be inspected. A large measurement may indicate largevibrations or accelerations that corroborate that the measurement may beabnormal. Measurements collected in such situations are likely to havesignificant electrical noises.

At step 308, the analyzer 202 may analyze signals from the energyreceiver 206 analyzed in the frequency domain to determine bloodmetrics. Concentration of a nutrient in the blood may subsequently bedetermined. In some embodiments, signals may be provided to a bandpassfilter that separates AC components from DC components. An AC componentmay represent signal variation at the cardiac frequency and a DCcomponent may represent the average overall transmitted light intensity.In some embodiments, a heart rate and/or oxygen saturation, SpO₂ may bedetermined. The heart rate may be determined, for example, by averagingthe maximum frequency to determine the rate of cardiac beats in apredetermined amount of time. The oxygen saturation SpO₂ may bedetermined according to Equation (1):

S_(p)O₂=110−25×R  (1),

where R is the ratio of a red and infrared normalized transmitted lightintensity. R may be determined according to Equation (2):

$\begin{matrix}{{R = \frac{{AC}_{R}/{DC}_{R}}{{AC}_{IR}/{DC}_{IR}}},} & {(2),}\end{matrix}$

where the AC_(R) is the AC component of the detected energycorresponding to a wavelength (e.g., red light), DC_(R) is the DCcomponent of the detected energy corresponding to the wavelength (e.g.,red light), AC_(IR) is the AC component of the detected energycorresponding to a different wavelength (e.g., infrared light), andDC_(IR) is the DC component of the detected energy corresponding to thedifferent wavelength (e.g., infrared light). In some embodiments, the ACcomponent may be selected as the highest spectral line in the cardiacfrequency band. Waveform analysis may be performed to determine the R-Rinterval defined by two successive AC components, an elapsed intervaland the peturbation, if there is any.

It will be appreciated that analysis may be performed by the analyzer202 and/or any other digital device (e.g., any of users devices 110-114or analysis system 108).

At step 308, state space estimation and progression may be performed todetermine blood metrics. A system may be modeled according to Equation(3):

x(n+1)=f[x(n)]+u(n)y(n)=h[x(n)]+v(n)  (3),

where x(n) represents the state of the system, u(n) is process noise,y(n) is the vector of the observed signals, and v(n) is the measurementnoise.

Table 1 lists one or more parameters for x(n) as well as their initialvalue in some embodiments:

TABLE 1 Parameter Symbol Initial Value Cardiac frequency f_(HR) 1 HzCardiac phase θ_(HR) 0 Cardiac harmonic I_(Harmonic) ^(HR) 0 amplitudeCardiac Pulse P_(HR) 1 Pressure Point Blood Pressure P_(Point) 1Respiratory f_(Resp) 0.3 Hz frequency Respiratory phase θ_(Resp) 0Wavelength i = 1 . . . N I_(λ) _(i) ^(AC) 0.5 max_value AC peakamplitude Wavelength i = 1 . . . N pos_(λ) _(i) ^(AC) Corresponding FFTAC peak location bin to 1 Hz Wavelength i = 1 . . . N I_(λ) _(i) ^(DC)0.5 max_value DC Wavelength i = 1 . . . N I_(λ) _(i) ^(p2p) 1 ADC readp2p amplitude Wavelength i = 1 . . . N τ_(λ) _(i) ^(rise) 0.1 sec risetime Wavelength i = 1 . . . N c_(λ) _(i) 1 Significance coefficientWavelength i = 1 . . . N T_(λ) _(i) ^(HRV) 1 sec HRV Best Ratio pHBR_(pH) 2 Best Ratio pCO2 BR_(pCO2) 3 Best Ratio pHCO3− BR_(pHCO3) ⁻ 4Acceleration I_(move) 0 magnitude GPS velocity |v|_(GPS) 0 GPS altitude|alt|_(GPS) 0 GPS acceleration |a|_(GPS) 0 GPS incline |incline|_(GPS) 0Restfulness Rest 0 Hydration Hyd 0 Systolic Blood SBP 120 mmHg PressureDiastolic Blood DBP 80 mmHg Pressure End tidal CO2 ETCO2 40 mmHg BloodCarbon SpCO 0% Monoxide

Table 2 lists one or more parameters for y(n) as well as their initialvalue in some embodiments:

TABLE 2 Parameter Symbol Initial Blood pH pH 7.35 Blood PCO2 pCO₂ 24mmol Blood PO2 pO₂ 24 mmol Blood PHCO3− pHCO₃ ⁻ 24 mmol Blood GlucosepC₆H₁₂O₆ 3 mmol Cardiac Frequency f_(HR) 1 Point Blood PressureP_(Point) 1 Respiratory f_(Resp) 0.3 Hz Frequency GPS velocity |v|_(GPS)0 GPS altitude |alt|_(GPS) 0 GPS acceleration |a|_(GPS) 0 GPS incline|incline|_(GPS) 0

Table 3 lists the state space model F(X(n)) between the parameterslisted in Table 1 and Table 2 in some embodiments, where the energywavelengths comprise 880 nm, 631 nm, 1450 nm, and 1550 nm:

TABLE 3 Name Symbol Equation Cardiac frequency f_(HR)${bin\_ to}{\_ freq}\left( \frac{{\Sigma c}_{\lambda_{i}}{pos}_{\lambda_{i}}^{A\; C}}{{\Sigma c}_{\lambda_{i}}} \right)$Cardiac θ_(HR) θ_(HR)(n − 1) + f_(s) ⁻¹ * ω*, where ω* ε [ω_min, ω_max]phase Cardiac harmonic amplitude I_(Harmonic) ^(HR)$\frac{{\Sigma c}_{\lambda_{i}}I_{\lambda_{i}}^{p\; 2p}}{{\Sigma c}_{\lambda_{i}}}$Cardiac Pulse Pressure P_(HR)$\left( \frac{{\Sigma c}_{\lambda_{i}}\tau_{\lambda_{i}}^{rise}}{{\Sigma c}_{\lambda_{i}}} \right)\hat{}\; {- 1}$Point Blood P_(Point) τ_(λ) ₁ ^(rise) ⁻¹ Pressure Respiratory f_(Resp)3) Respiratory and Heart Rate State Models: The fluctua- frequency tionsin the respiratory rate ω_(r)(n) and fluctuations in the heart rateω_(ca)(n) that are not due to RSA, are both modeled as a first-orderautoregressive process with a mean and mild nonlin- earity that limitthe frequencies to know physiologic ranges ω_(r)(n + 1) = ω _(r) +α_(r){s_(r)[ω_(r)(n)] − ω _(r)} + u_(ω) _(r) (n) (15) ω_(ca)(n + 1) = ω_(c) + α_(c){s_(c)[ω_(ca)(n)] − ω _(c)} + u_(ω) _(ca) (n) (16) where ω_(r) and ω _(c) are the a priori estimates a the expected res- piratoryand cardiac frequencies, respectively; α_(r) and α_(c) con- trol thebandwidth of the frequency fluctuations; and u_(ω) _(r) (n) and u_(ω)_(ca) (n) are white noise processes that model the random vari- ation inthe respiratory and cardiac frequencies, respectively. The instantaneousrespiratory and heart rates in units of Hz are then${f_{r}(n)} = {\frac{1}{2{\pi T}_{s}}{s_{r}\left\lbrack {\omega_{r}(n)} \right\rbrack}}$(17)${f_{c}(n)} = {\frac{1}{2{\pi T}_{s}}{{s_{c}\left\lbrack {\omega_{c}(n)} \right\rbrack}.}}$(18) Respiratory θ_(Resp) θ_(Resp)(n − 1) + f_(s) ⁻¹ * ω*, where ω* ε[ω_min, ω_max] phase λ = 880 nm I_(λ) _(i) ^(AC) From FFT AC peak λ =880 nm pos_(λ) _(i) ^(AC) From FFT DC λ = 880 nm I_(λ) _(i) ^(DC) FromWaveform analysis p2p amplitude λ = 880 nm I_(λ) _(i) ^(p2p) FromWaveform analysis rise time λ = 880 nm τ_(λ) _(i) ^(rise) From Waveformanalysis signal trend λ = 880 nm c_(λ) _(i) From Waveform analysisSignificance coefficient λ = 880 nm T_(λ) _(i) ^(HRV) From Waveformanalysis HRV λ = 631 nm I_(λ) _(i) ^(AC) From Fast FourierTransformation (“FFT”) AC peak λ = 631 nm pos_(λ) _(i) ^(AC) From FFT DCλ = 631 nm I_(λ) _(i) ^(DC) From Waveform analysis p2p amplitude λ = 631nm I_(λ) _(i) ^(p2p) From Waveform analysis rise time λ = 631 nm τ_(λ)_(i) ^(rise) From Waveform analysis signal trend λ = 631 nm c_(λ) _(i)From Waveform analysis Significance coefficient λ = 631 nm T_(λ) _(i)^(HRV) From Waveform analysis HRV λ = 1450 nm I_(λ) _(i) AC From FFT ACpeak λ = 1450 nm pos_(λ) _(i) ^(AC) From FFT DC λ = 1450 nm I_(λ) _(i)^(DC) From Waveform analysis p2p amplitude λ = 1450 nm I_(λ) _(i) ^(p2p)From Waveform analysis rise time λ = 1450 nm τ_(λ) _(i) ^(rise) FromWaveform analysis signal trend λ = 1450 nm c_(λ) _(i) From Waveformanalysis Significance coefficient λ = 1450 nm T_(λ) _(i) ^(HRV) FromWaveform analysis HRV λ = 1550 nm I_(λ) _(i) ^(AC) From FFT AC peak λ =1550 nm pos_(λ) _(i) ^(AC) From FFT DC λ = 1550 nm I_(λ) _(i) ^(DC) FromWaveform analysis p2p amplitude λ = 1550 nm I_(λ) _(i) ^(p2p) FromWaveform analysis rise time λ = 1550 nm τ_(λ) _(i) ^(rise) From Waveformanalysis signal trend λ = 1550 nm c_(λ) _(i) From Waveform analysisSignificance coefficient λ = 1550 nm T_(λ) _(i) ^(HRV) From Waveformanalysis HRV Best Ratio BR_(pH) Device Calibration pH Best RatioBR_(pCO2) Device Calibration pCO2 Best Ratio BR_(pHCO3) ⁻ DeviceCalibration pHCO3− Acceleration I_(move) From Accelerometer magnitudeGPS velocity |v|_(GPS) From GPS GPS altitude |alt|_(GPS) From GPS GPS|a|_(GPS) From GPS acceleration GPS incline |incline|_(GP) From GPS

Table 4 lists Y(n)=H(x(n)):

TABLE 4 Name Symbol Equation Blood pH pH$6.1 + {\log \left( \frac{{pHCO}_{3}^{-}}{0.03{pCO}_{2}} \right)}$Blood PCO2 pCO₂$\frac{\varepsilon_{Hb}^{{CO}_{2}} - {\varepsilon_{Hb}^{Hb}*I_{\lambda_{{CO}_{2}}}^{A\; C}*{I_{\lambda_{1}}^{D\; C}/\left( {I_{\lambda_{1}}^{A\; C}*I_{\lambda_{{CO}_{2}}}^{D\; C}} \right)}}}{\varepsilon_{Hb}^{{CO}_{2}} - \varepsilon_{{CO}_{2}}^{{CO}_{2}} + {\left( {\varepsilon_{{CO}_{2}}^{Hb} - \varepsilon_{Hb}^{Hb}} \right)*I_{\lambda_{{CO}_{2}}}^{A\; C}*{I_{\lambda_{1}}^{D\; C}/\left( {I_{\lambda_{1}}^{A\; C}*I_{\lambda_{{CO}_{2}}}^{D\; C}} \right)}}}$Blood PO2 pO₂$\frac{\varepsilon_{Hb}^{O_{2}} - {\varepsilon_{Hb}^{Hb}*I_{\lambda_{O_{2}}}^{A\; C}*{I_{\lambda_{1}}^{D\; C}/\left( {I_{\lambda_{1}}^{A\; C}*I_{\lambda_{O_{2}}}^{D\; C}} \right)}}}{\varepsilon_{Hb}^{O_{2}} - \varepsilon_{O_{2}}^{O_{2}} + {\left( {\varepsilon_{O_{2}}^{Hb} - \varepsilon_{Hb}^{Hb}} \right)*I_{\lambda_{O_{2}}}^{A\; C}*{I_{\lambda_{1}}^{D\; C}/\left( {I_{\lambda_{1}}^{A\; C}*I_{\lambda_{O_{2}}}^{D\; C}} \right)}}}$Blood PHCO3− pHCO₃ ⁻$\frac{\varepsilon_{Hb}^{{HCO}_{3}^{-}} - {\varepsilon_{Hb}^{Hb}*I_{\lambda_{{HCO}_{3}^{-}}}^{A\; C}*{I_{\lambda_{1}}^{D\; C}/\left( {I_{\lambda_{1}}^{A\; C}*I_{\lambda_{{HCO}_{3}^{-}}}^{D\; C}} \right)}}}{\varepsilon_{Hb}^{{HCO}_{3}^{-}} - \varepsilon_{{HCO}_{3}^{-}}^{{HCO}_{3}^{-}} + {\left( {\varepsilon_{{HCO}_{3}^{-}}^{Hb} - \varepsilon_{Hb}^{Hb}} \right)*I_{\lambda_{{HCO}_{3}^{-}}}^{A\; C}*{I_{\lambda_{1}}^{D\; C}/\left( {I_{\lambda_{1}}^{A\; C}*I_{\lambda_{{HCO}_{3}^{-}}}^{D\; C}} \right)}}}$Blood Glucose pC₆H₁₂O₆ As above Cardiac f_(HR) As in f(x(n)) FrequencyPoint Blood P_(Point) As in f(x(n)) Pressure Respiratory f_(Resp) As inf(x(n)) Frequency GPS velocity |v|_(GPS) As in f(x(n)) GPS altitude|alt|_(GPS) As in f(x(n)) GPS |a|_(GPS) As in f(x(n)) acceleration GPSincline |incline|_(GPS) As in f(x(n))

As illustrated in Tables 3 and 4, by generating energy at differentwavelengths, one or more blood metrics may be determined from thedetected energy. For example, cardiac frequency, cardiac phase, cardiacharmonic amplitude, cardiac pulse pressure, point blood pressure,respiratory frequency, respiratory phase, blood pH, blood pCO₂, bloodpHCO₃₋, or blood glucose, may be determined.

FIG. 4 illustrates an exemplary apparatus 400 for measuring variousblood metrics in accordance with an embodiment of the presentapplication. The apparatus 400 comprises a central unit 402, a sensorarray 404, and a coupling means 408. The central unit 402 may be awearable member made of elastic and/or flexible hypoallergenic wearablematerial.

In the illustrated example, the sensor array 404 is coupled to thecentral unit 402. The sensor array 404 may comprise any number of energytransmitters and/or energy receivers. The sensor array 404 may bedetached from the central unit 402. In some embodiments, the sensorarray 404 may be mechanically and electrically coupled to the centralunit 402. The sensor array 404 comprises various illumination (e.g.,near infra-red, infra-red, or short infra-red) and sensing array. Thesensor array 404 may further comprise conductivity and/or capacitysensors. Different sensor array 404 may be provided to measure differentblood metrics.

The central unit 402 may comprise an analyzer. In some embodiments, thecentral unit comprises an analyzer, one or more energy transmitter(s),and one or more energy receiver(s). The central unit 402 may furthercomprise a communication module and/or a battery compartment. Thecoupling means 408 are mounting screw holes in FIG. 4, however, it willbe appreciated that coupling means may be optional. Further, couplingmeans 408 may include any kind of means including a clip, hook, switch,expanding fabric, adhesive, or the like. One of ordinary skill in theart would understand that other mounting means may be used.

The apparatus 400 further comprises a micro-USB port 406 to allow forcommunication with a digital device and a screen 410. Various userinterfaces (e.g., lights, a display, touchscreen, or the like) may bedisplayed on the screen 410.

In some embodiments, the apparatus 400 may be or include the bloodmetrics measurement apparatus 200 described with regard to FIG. 2, orthe blood metrics measurement apparatus 102 described with regard toFIG. 1.

FIGS. 5-7 are screenshots illustrating an example of presenting healthanalysis over a user interface in accordance with various embodiments.Various embodiments may store blood metrics and/or nutrientmeasurements. FIG. 5 illustrates a display 500 of an assessment of acurrent health index derived from data collected from or with amultispectral blood metrics measurement apparatus in variousembodiments. The display may appear on the user's smartphone, forexample. In various embodiments, the analyzer 202 or any digital devicemay analyze measurements collected over time to generate a health scorethat can be compared to a health threshold to provide qualitative and/orquantitative scoring. Similarly, the analyzer 202 or any digital devicemay analyze measurements recently collected to generate a current scorethat can be compared to a current health threshold to providequalitative and/or quantitative scoring.

In some embodiments, a user interface may display a health score 502, anoption for details regarding the health score 504, a current score 506,an option for details regarding the current score 508, a recommendation510, a settings option 512, and a history of measurements 514. Optionsfor details 504 and 506 may describe the metrics as well as the valuesof the metrics that went into the health score 504 and the current score506, respectively.

In some embodiments, there is a recommendation engine configured toretrieve recommendations 510 based on the health score 504 and/or thecurrent score 506. The settings option 512 may allow the user toconfigure metrics to be tracked and set alerts. In some embodiments, theuser may utilize the settings options 512 to secure the information(e.g., encrypt the information and/or set passwords). The history ofmeasurements option 514 may provide logged metrics and analysisinformation over time (e.g., as a chart).

It will be appreciated that the multispectral blood metrics measurementapparatus 200 and/or any digital device may generate reports based onthe analysis, the metrics (e.g., blood metrics or metrics based onnutrients), historic measurements, historic analysis, or any otherinformation. Further, alerts may be set by the multispectral bloodmetrics measurement apparatus 200 and/or any digital device.

It will also be appreciated that the multispectral blood metricsmeasurement apparatus 200 may be taking many measurements over time(e.g., many measurements every minute) and may track health and changesin metrics over time and/or in the short term. In some embodiments, if acondition is of sufficient seriousness (e.g., heart rate shows erraticbeats), the multispectral blood metrics measurement apparatus 200 or anydigital device may provide an alert and request assistance (e.g., fromemergency personnel via the communication network).

Various health and wellness predictors such as, but not limited to,energy level, blood iron level, blood oxygen level, and blood glucoselevel are displayed. FIG. 6 illustrates a display 600 of an assessmentof an overall health index, derived from data collected from or with amultispectral blood metrics measurement apparatus in variousembodiments.

In some embodiments, a user interface may display a current score 602,energy balance information 606, sleep quality information 608, bloodmetrics information 610, and body composition information 612 as well asother information accessible by slider 604. Additional details may beavailable through buttons 614. It will be appreciated that any amount ofinformation may be provided. In some embodiments, the display 600summarizes information while more detailed information recommendations,measurement data, analysis information, and the like may be availablethrough the details buttons 614 or in other screens.

Recommendations to the user based on the current and previousmeasurements are provided. FIG. 7 illustrates a display 700 of anassessment of an overall health index, derived from data collected fromor with a multispectral blood metrics measurement apparatus in variousembodiments. In some embodiments, a user interface may display a currentscore 702, energy level information 706, blood iron level information708, blood oxygen level information 710, and blood glucose level 712 aswell as other information accessible by slider 704. Additional detailsmay be available through buttons 714. It will be appreciated that anyamount of information may be provided. In some embodiments, the display700 summarizes information while more detailed informationrecommendations, measurement data, analysis information, and the likemay be available through the details buttons 714 or in other screens.

Various embodiments track and analyze blood metrics. Healthrecommendations may be based on instantaneous blood metrics measurementsand history blood metrics measurement. In addition, blood metrics andhealth condition of a user may be compared to health data of the generalpublic. For example, a user's health condition may be compared to healthcondition of other similar users such as users of the same gender andage group, users of the same profession, friends of a user, etc.

FIG. 8 is a block diagram of an exemplary digital device 800. Thedigital device 800 comprises a processor 802, a memory system 804, astorage system 806, a communication network interface 808, an I/Ointerface 810, and a display interface 812 communicatively coupled to abus 814. The processor 802 is configured to execute executableinstructions (e.g., programs). In some embodiments, the processor 802comprises circuitry or any processor capable of processing theexecutable instructions.

The memory system 804 is any memory configured to store data. Someexamples of the memory system 804 are storage devices, such as RAM orROM. The memory system 804 can comprise the RAM cache. In variousembodiments, data is stored within the memory system 804. The datawithin the memory system 804 may be cleared or ultimately transferred tothe storage system 806.

The storage system 806 is any storage configured to retrieve and storedata. Some examples of the storage system 806 are flash drives, harddrives, optical drives, and/or magnetic tape. In some embodiments, thedigital device 800 includes a memory system 804 in the form of RAM and astorage system 806 in the form of flash data. Both the memory system 804and the storage system 806 comprise computer readable media which maystore instructions or programs that are executable by a computerprocessor including the processor 802.

The communications network interface (com. network interface) 808 can becoupled to a network (e.g., the computer network 104) via the link 816.The communication network interface 808 may support communication overan Ethernet connection, a serial connection, a parallel connection, oran ATA connection, for example. The communication network interface 808may also support wireless communication (e.g., 802.11 a/b/g/n, WiMax).It will be appreciated that the communication network interface 808 cansupport many wired and wireless standards.

The optional input/output (I/O) interface 810 is any device thatreceives input from the user and output data. The optional displayinterface 812 is any device that is configured to output graphics anddata to a display. In one example, the display interface 812 is agraphics adapter.

It will be appreciated that the hardware elements of the digital device800 are not limited to those depicted in FIG. 8. A digital device 800may comprise more or less hardware elements than those depicted.Further, hardware elements may share functionality and still be withinvarious embodiments described herein. In one example, encoding and/ordecoding may be performed by the processor 802 and/or a co-processorlocated on a GPU (i.e., Nvidia®).

Some embodiments described herein include systems and methods fornon-invasive continuous blood pressure measurement. For example, a bloodmetrics measurement apparatus may generate multi-channel signals (e.g.,PPG signals or pressure signals) which may be provided to a bloodpressure calculation system to calculate arterial blood pressure values(e.g., systolic blood pressure values and/or diastolic blood pressurevalues). In some embodiments, the blood metrics measurement apparatusincludes a pressure sensor for measuring pressure signals. In someembodiments, the blood pressure calculation system may pre-process (or,“filter”) the multi-channel signals (e.g., to remove noise from thesignals), select (or, “extract”) subsets of “high quality” waves fromthe multi-channel signals, select (or, “extract”) sets of features fromthe high quality waves, and generate sets of feature vectors based onthe selected sets of features. In some embodiments, an empirical bloodpressure model is used to calculate arterial blood pressure values basedon the sets of feature vectors.

FIG. 9 depicts a block diagram of a system and environment 900 fornon-invasive blood pressure measurement according to some embodiments.In some embodiments, the system and environment 900 includes a bloodmetrics measurement apparatus 902, a user device 904, a blood metricsserver 906, a communication network 908, and a communication link 910.

The blood metrics measurement apparatus 902 may be configured tofacilitate non-invasive measurement of a user's blood pressure. In someembodiments, more particularly, the blood metrics measurement apparatus902 facilitates non-invasive continuous measurement of a user's bloodpressure. It will be appreciated that non-invasive continuousmeasurement may include measuring arterial blood pressure in real-timewithout interruption (e.g., without having to inflate and deflate acuff) and without inserting a device (e.g., a tube or catheter) into tothe user's tissue or body.

In some embodiments, the blood metrics measurement apparatus 902 mayproject energy into tissue of a user (e.g., the wearer of the apparatus902) and detect (or, “receive”) energy reflected from and/or transmittedthrough tissue of the user. In some embodiments, the blood metricsmeasurement apparatus 902 may project energy at one or more wavelengths(e.g., 523 nm, 590 nm, 623 nm, 660 nm, 740 nm, 850 nm, 940 nm, etc.)from multiple light sources (e.g., light-emitting diodes). The detectedenergy may be a fraction (or, “portion”) of the energy that is projectedinto the tissue. Energy at different wavelengths may be absorbed at adifferent rate that is related to a user's body state. The user's bodystate (e.g., heart rate, blood pressure, or the like) may determine theamount of absorbed energy. Accordingly, energy at different wavelengthsmay be absorbed at different levels by a user's body. The fraction ofenergy received (e.g., that is reflected by the tissue or transmittedthrough the tissue) may be used to generate signals, such asphotoplethysmogram (or, “PPG”) signals, at different levels. Thesesignals may provide information of the user's body state. Thisinformation may be obtained by analyzing waveforms of the signal in atime domain and/or a frequency domain.

In some embodiments, the blood metrics measurement apparatus 902 maymeasure non-optical signals. For example, the blood metrics measurementapparatus 902 may be configured to non-invasively detect arterialpressure of one or more arteries of the user (e.g., radial artery orulnar artery) based on pressure signals. Similar to optical signals, thepressure signals may be measured to provide information of the user'sbody state, and this information may be obtained by analyzing waveformsof the signal in a time domain and/or a frequency domain.

Functionality of the systems and modules described herein may beperformed similarly with respect to both optical signals (e.g., PPGsignals) and non-optical signals (e.g., pressure signals). Accordingly,it will be appreciated that signals, as used herein, may include opticalsignals, non-optical signals, or both.

In some embodiments, a user may comfortably wear the blood metricsmeasurement apparatus 902 over time. For example, the blood metricsmeasurement apparatus 902 may be worn without interrupting typical useractivity (e.g., moving, walking, running, sleeping, etc.). The bloodmetrics measurement apparatus 902 may comprise lightweight components.The blood metrics measurement apparatus 902 may be made ofhypoallergenic materials. The blood metrics measurement apparatus 902may be flexibly built so that it may fit various body parts (e.g.,wrist, earlobe, ankle, or chest) of a user. In some embodiments, theblood metrics measurement apparatus 902 may include some or all of thefunctionality of the user device 904.

In some embodiments, the blood metrics measurement apparatus 902 may beor include the apparatus 400 described with regard to FIG. 4, the bloodmetrics measurement apparatus 200 depicted with regard to FIG. 2, or theblood metrics measurement apparatus 102 described with regard to FIG. 1.

The user device 904 may include any digital device (e.g., mobile device)capable of executing an application related to measuring blood metrics,such as blood pressure calculation, presenting a user interface througha display and/or communicating with various entities in the examplesystem and environment 900 through the communication network 908 and/ora communication link 910 (discussed further below). For example, throughthe communication link 910, the user device 902 may receive one or moreblood metric measurements (e.g., one or more signals) from the bloodmetrics measurement apparatus 902, track and store the blood metricmeasurements, analyze the blood metric measurements, and/or providerecommendations and/or messages based on the blood metric measurements.An application user interface may facilitate interaction between a userof the user device 904 and an application running on the user device904. The user device 904 may be, include, or be a part of the usersystem 104 described with regard to FIG. 1.

In various embodiments, the user device 904 may perform analysis of themeasurements received from the blood metrics measurement apparatus 902(e.g., calculate blood pressure values), display results, providereports, display progress, display historic readings, trackmeasurements, track analysis, provide alerts (or, messages), and/or thelike.

The blood metrics server 906 may be configured to generate and/or storeempirical blood pressure models. For example, the blood metrics server906 may comprise one or more server computers, desktop computers, mobiledevices, and/or other digital device(s). In some embodiments, the bloodmetrics server 906 receives and process user registration requests(e.g., user account registration requests, blood metrics measurementapparatus registration requests, etc.), provides empirical bloodpressure model(s) to the user device 902 via the communication network908, and/or the like.

As used in this paper, computing devices (e.g., digital devices) mayinclude a mobile phone, a tablet computing device, a laptop, a desktopcomputer, personal digital assistant, a portable gaming unit, a wiredgaming unit, a thin client, a set-top box, a portable multi-mediaplayer, or any other type of network accessible user device known tothose of skill in the art. Further, the blood metrics server 908 maycomprise of one or more servers, which may be operating on orimplemented using one or more cloud-based services (e.g.,System-as-a-Service [SaaS], Platform-as-a-Service [PaaS], orInfrastructure-as-a-Service [IaaS]).

Each of the blood metrics measurement apparatus 902, the user device904, and the blood metrics server 906 may be implemented using one ormore digital devices. An example digital device is described in FIG. 8.

In some embodiments, the communication network 908 represents one ormore communication network(s). The communication network 908 may providecommunication between the blood metrics measurement apparatus 902, theuser device 904, and/or the blood metrics server 906. In some examples,the communication network 908 comprises digital devices, routers,cables, and/or other network topology. In other examples, thecommunication network 908 may be wireless and/or wireless. In someembodiments, the communication network 908 may be another type ofnetwork, such as the Internet, that may be public, private, IP-based,non-IP based, and so forth.

In some embodiments, the communication link 910 represents one or morecommunication network connections. The communication link 910 mayprovide communication between the blood metrics measurement apparatus902 and the user device 904. In some examples, the communication link910 comprises a network connection of the communication network 908,and/or a separate communication network. In some embodiments, thecommunication link 910 comprises a wireless communication link, such asa Bluetooth communication link, Wi-Fi communication link, and/or thelike.

FIG. 10A depicts a block diagram 1000 of a blood metrics measurementapparatus 902 according to some embodiments. The blood metricsmeasurement apparatus 902 comprises an analyzer 1002, an energytransmitter 1004, an energy receiver 1006, a pressure sensor 1008, amotion sensor 1012, and a communication module 1014. Various embodimentsmay comprise a wearable member. The wearable member may include, forexample, a bracelet, glasses, necklace, ring, anklet, belt, broach,jewelry, clothing, or any other member of combination of members thatallow the blood metrics measurement apparatus 902 to be close to ortouch a body of the wearer. In some embodiments, the blood metricsmeasurement apparatus 902 may further comprise a driver (not shown) anda power source (not shown). The power source may be coupled to theenergy transmitter 1004 via the driver. The blood metrics measurementapparatus 902 may further comprise an Analog-to-Digital Converter(“ADC”) (not shown). The ADC may be coupled to the energy receiver 1006and the analyzer 202.

The analyzer 1002 may be coupled to the energy transmitter 1004, theenergy receiver 1006, the pressure sensor 1008, the motion sensor 1012,and the communication module 1014. The energy transmitter 1004 and theenergy receiver 1006 may be secured to the wearable member such that theenergy transmitter 1004 and the energy receiver 1006 may make contact orbe in proximity with tissues (e.g., skin) of a user. In variousembodiments, the energy transmitter 1004 emits energy including, but notlimited to, light, into the body of the user. The energy produced by theenergy transmitter may be in the direction of entering tissues. Forexample, the energy produced by the energy transmitter 1004 is in adirection 1051 entering the tissue 1010. In some embodiments, the energytransmitter 1004 emits energy or light at different wavelengths. Theenergy transmitter 1004 may comprise any number of light emission diodes(“LEDs”). In some embodiments, the energy transmitter 1004 comprises atleast two LEDs. Each LED may be configured to emit energy at one or morewavelengths. In another example, each LED may emit light with a peakwavelength centered around a wavelength. In one example, the energytransmitter 1004 may emit light with a peak wavelength centered around500 nm to 1800 nm, although the wavelength may include a variety ofspectrums (e.g., IR, near-IR, and the like).

Each wavelength may correspond to one or more blood metrics of interestand/or one or more nutrients. It will be appreciated that differentcomponents of the blood and/or different nutrients may absorb energy atdifferent wavelengths. In various embodiments, a controller, driver,analyzer 1002, or the like may receive a blood metric or nutrient ofinterest (e.g., from a user of the blood metrics measurement apparatus902 and/or a user device not shown). The controller, driver, analyzer1002 or the like may associate the blood metric and/or nutrient ofinterest with one or more wavelengths and configure one or more of theLEDs to emit energy of at least one of the one or more wavelengths. Forexample, the analyzer 1002 may command the driver to deliver electricpower to one LED that is configured to emit light at the desiredwavelength.

The energy receiver 1006 may detect energy associated with the energyprovided by the LEDs from tissues (e.g., skin) of the user. In thisexample, received and/or detected energy is in the direction 1052 thatleaves from the tissue 1010. In various embodiments, the energy receiver1006 may detect energy from the body of the user that is a fraction ofthe energy produced by the energy transmitter 1004.

The energy transmitter 1004 and the energy receiver 1006 may beconfigured such that the energy receiver 1006 detects reflected energyfrom tissues of the user of the multispectral blood metrics measurementapparatus 902. For example, the energy transmitter 1004 and the energyreceiver 1006 may be configured to be disposed on one surface or side ofa user's tissue. The energy transmitter 1004 and the energy receiver1006 may be configured such that the energy receiver 1006 detects energyfrom the energy transmitter 1004 that passes through or reflects fromthe user's tissues. In some embodiments, the energy transmitter 1004 andthe energy receiver 1006 may be configured to be disposed on different(e.g., opposite) surfaces or sides of a users' tissue.

The energy transmitter 1004 may be configured to generate energy at aset of wavelengths. In some embodiments, the energy transmitter 1004 isconfigured to generate energy such that energy at different wavelengthsis generated sequentially and/or periodically. The energy transmitter1004 may be configured to generate energy at each particular wavelengthuntil energy at all wavelengths of a set is generated. The period oftime for the energy transmitter 1004 to generate energy at allwavelengths is a generation period. Subsequent to completion of thegeneration period, the energy transmitter 1004 may start a newgeneration period thereby allowing multiple measurements.

Energy detected from tissues of a user may be detected by the energyreceiver 1006. The energy receiver 1006 may be configured to generate asignal in response to the detected energy. In some embodiments, theenergy receiver 1006 may be triggered by the energy received to generatean output which may be dependent or partially dependent upon the amountof energy received. The energy receiver 1006 may be configured togenerate a signal (e.g., an electric current, or an electric voltage) inresponse to the energy received from the tissues.

The signal generated by the energy receiver 1006 may be associated withone or more blood metrics and/or nutrients of interest. Energy atdifferent wavelengths may be absorbed at a different rate that isrelated to a user's body state. The user's body state (e.g., heart rate,blood pressure, nutrient level, or the like) may determine the amount ofenergy absorbed by the body. Accordingly, energy from the user's body atdifferent wavelengths may be detected at different levels therebycausing different responses of the energy receiver 1006. The energyreceiver 1006 may, for example, output signals based on the level of theenergy received.

The energy receiver 1006 may provide information associated with theuser's body state. Blood metric information may be determined (e.g., bythe analyzer 1002) from the output signal of the energy receiver 1006.In some embodiments, the energy receiver 1006 may comprise a set ofphotodetectors (e.g., a photo diode, or a photo transistor) which areconfigured to output a signal dependent upon photons or the like fromthe energy transmitter 1004 that passed through tissues of the user.

In various embodiments, the output signal of the energy receiver 1006 isa composite of multiple signals. Each signal of the composite may beassociated with energy at a wavelength which may be a portion (orfraction) of the total energy emitted by the energy transmitter 1004.

The pressure sensor 1008 may be configured to generate, detect, and/ormeasure non-optical signals. For example, the pressure sensor 1008 maynon-invasively and continuously generate, detect and/or measure pressurepulse signals. In some embodiments, the pressure sensor 1008 measurespressure pulse waveforms associated with arterial pressure of one ormore arteries of a user. In various embodiments, the blood metricsmeasurement apparatus 902 may include the energy transmitter 1004 togenerate optical signals and the energy receiver 1006 to receive opticalsignals but not the pressure sensor 1008. Alternately, the blood metricsmeasurement apparatus 902 may include the pressure sensor 1008 that mayproduce pressure on the user's body and/or receive measurements based onthat pressure but not the energy transmitter 1004 or the energy receiver1006 to receive optical signals.

In some embodiments, the motion sensor 1012 may be configured to detectposition and orientation of the blood metrics measurement apparatus 902,and detect motion of the blood metrics measurement apparatus 902. Forexample, the blood metrics measurement apparatus 902 may detectposition, orientation, and motion along an x, y, or z-axis, and measuredvalues may include velocity, acceleration, distance, and the like. Insome embodiments, the motion sensor 1012 may include one or moreaccelerometers, gyroscope, global positioning systems, or the like. Themotion sensor may be coupled to the analyzer 1002.

The communication module 1014 may be configured to send requests to andreceive data from one or a plurality of systems. The communicationmodule 1014 may send requests to and receive data from a systems througha network or a portion of a network. Depending uponimplementation-specific or other considerations, the communicationmodule 1014 may send requests and receive data through a connection(e.g., the communication link 910), all or a portion of which may be awireless connection. The communication module 1014 may request andreceive messages, and/or other communications from associated systems.

FIG. 10B depicts a block diagram of a sensor system 1060 according tosome embodiments. In some embodiments, the sensor system 1060 may bedisposed in the blood metrics measurement apparatus 902. For example,the energy transmitter 1004 and the energy receiver 1006 may comprisethe sensor system 1060. As shown, the sensor system 1060 comprises twosets of multi-LED energy transmitters (i.e., LED set 1062 and 1066 eachreferred to as energy transmitters herein), and two sets ofcorresponding photodiode energy receivers 1064 and 1068. It will beappreciated that each pair of corresponding energy transmitters andenergy receivers (e.g., energy transmitter 1062 and energy receiver 1064as well as energy transmitter 1066 and energy receiver 1068) may bereferred to as an LED-PD system, and the sensor system 1060 may includeany number of such LED-PD systems, although only two are shown here.

In some embodiments, the energy transmitters 1062 and 1066 each comprisea set of LEDs (e.g., between 2-4 LEDs) configured to transmit a varietyof wavelengths into tissue of a user. The corresponding energy receivers1064 and 1068 may each comprise one or more photodiodes which receivereturning light from the corresponding energy transmitters 1062 and 1066after passage through tissue. In some embodiments, the energytransmitter 1062 and the energy receiver 1064 may be spaced at apredetermined distance (e.g., 15 mm) from the energy transmitter 1066and the energy receiver 1068. Similarly, each energy transmitter 1062and 1066 may be spaced at a predetermined distance (e.g., 10 mm) from acorresponding energy receiver 1064 and 1068.

In some embodiments, the sensor system 1060 may be mounted on a user'swrist along the radial artery, or other area of the user's body alongarterial pathways (e.g., ulnar artery). The sensor system 1060 mayinclude an accelerometer and gyroscope for detecting position andorientation information.

In some embodiments, the sensor system 1060 may include a pressuresensor. For example, at least one LED within each LED-PD system may beconfigured to sample data from tissue at a very high frequency (upwardsof 1 KHz), and the other LEDs may sample at a lower rate (around 50-100Hz). The channels sampling data at high frequency may be referred to asthe fast LED channels, and the channels sampling data at lower frequencymay be referred to as slow LED channels.

In some embodiments, the sensor system 1060 may be included as a part ofthe blood metrics measurement apparatus 902 described with regard toFIGS. 9 and 10A, the apparatus 400 described with regard to FIG. 4, theblood metrics measurement apparatus 200 described with regard to FIG. 2,or the blood metrics measurement apparatus 102 described with regard toFIG. 1. Similarly, the analyzer 202 may be or include a part of analyzer1002 described with regard to FIG. 2 or the central unit 402 describedwith regard to FIG. 4. The energy transmitter 1004 may be or include apart of energy transmitter 204 described with regard to FIG. 2 or thecentral unit 402 described with regard to FIG. 4. The energy receiver1006 may be or include energy receiver 206 described with regard to FIG.2 or the central unit 402 described with regard to FIG. 4.

FIG. 11 depicts a flowchart 1100 of an example method of operation of ablood metrics measurement apparatus (e.g., blood metrics measurementapparatus 902) according to some embodiments. In this and otherflowcharts described herein, the flowchart illustrates by way of examplea sequence of steps. It should be understood the steps may bereorganized for parallel execution, or reordered, as applicable.Moreover, some steps that could have been included may have been removedto avoid providing too much information for the sake of clarity and somesteps that were included could be removed, but may have been includedfor the sake of illustrative clarity.

In step 1102, a blood metrics measurement apparatus projects energy intotissue of a user (e.g., the user wearing blood metrics measurementapparatus). The energy may be projected from a transmitter (e.g., energytransmitter 1004) comprising a plurality of light sources (e.g., LEDs).In some embodiments, a first light source (e.g., one or more LEDs) mayproject light energy at a plurality of different wavelengths, such as523 nm, 590 nm, 623 nm, 660 nm, 740 nm, 850 nm, and 940 nm, and a secondlight source (e.g., one or more LEDs) may project energy at the same, orsubstantially similar, wavelength as one of the wavelengths projected bythe first light source (e.g., 523 nm, 590 nm, 623 nm, 660 nm, 740 nm,850 nm, or 940 nm). It will be appreciated that other configuration maybe used (e.g., a greater number of light sources) a greater or lessernumber of wavelengths projected from the lights sources, and so forth.

In step 1104, the blood metrics measurement apparatus receives (or,“detects) portions of energy through the tissue of the user. In someembodiments, an energy receiver (e.g., energy transmitter 1006) detectsa portion of the energy transmitted into the user's tissue by the energytransmitter. The energy receiver may generate a signal based on theportion of energy detected (e.g., based on the amount of the energydetected). For example, energy detected may be a portion of the energyprojected at step 1102 reflected by the tissue. By way of furtherexample, energy detected may be a portion of the energy projected atstep 1102 that passes through the tissue (e.g., other undetected energymay be absorbed by tissue and/or otherwise blocked). In variousembodiments, steps 1102 and 1104 are performed simultaneously orsubstantially simultaneously. That is, energy projection and detectionmay be performed approximately simultaneously.

In step 1106, the blood metrics measurement apparatus generates one ormore signals based on the received portions of energy. In someembodiments, the energy receiver may generate a multi-channel PPG signal(e.g., as mentioned above). The output (or, “generated”) signal of theenergy receiver may be an electric current or an electric voltage, ofwhich the amplitude may be related to the amount of the energy detected.

In various embodiments, analysis of the signals from the energy receivermay identify abnormal measurements. For example, each of themeasurements may be compared to a predetermined value. If the differencebetween the measurement and the predetermined value is above (or below)a threshold, then the measurement may be determined to be abnormal. Anabnormal value may trigger additional analysis or an alert. In someembodiments, an abnormal value is ignored (e.g., as possibly effected bynoise caused by movement of the energy transmitter and/or the energyreceiver). In various embodiments, the abnormal value may be discounted(e.g., the weight of the value reduced). The degree of discount may bebased, for example, on information from an accelerometer (e.g., a largeacceleration may indicate that the abnormal value should besignificantly discounted) and/or based on historical values. It will beappreciated that the degree of discount may be based on any number offactors.

In some embodiments, measurements may be averaged over a period of time.A Kalman filer (e.g., a nonlinear, unscented Kalman filter) may beapplied to any number of measurements or averaged measurements. A motionmeasurement (e.g., a measurement by an accelerometer) may be considered.Upon determining a measurement is abnormal, the motion measurement forthat time point may be inspected. A large measurement may indicate largevibrations or accelerations that corroborate that the measurement may beabnormal. Measurements collected in such situations are likely to havesignificant electrical noises.

At step 1108, the blood metrics measurement apparatus analyzes signalsfrom the energy receiver analyzed in the frequency domain to determineblood metrics. Concentration of a nutrient in the blood may subsequentlybe determined. In some embodiments, signals may be provided to abandpass filter that separates AC components from DC components. An ACcomponent may represent signal variation at the cardiac frequency and aDC component may represent the average overall transmitted lightintensity. In some embodiments, a heart rate and/or oxygen saturation,SpO₂ may be determined. The heart rate may be determined, for example,by averaging the maximum frequency to determine the rate of cardiacbeats in a predetermined amount of time. The oxygen saturation SpO₂ maybe determined according to Equation (1):

S_(p)O₂=110−25×R  (1),

where R is the ration of a red and infrared normalized transmitted lightintensity. R may be determined according to Equation (2):

$\begin{matrix}{{R = \frac{{AC}_{R}/{DC}_{R}}{{AC}_{IR}/{DC}_{IR}}},} & {(2),}\end{matrix}$

where the AC_(R) is the AC component of the detected energycorresponding to a wavelength (e.g., red light), DC_(R) is the DCcomponent of the detected energy corresponding to the wavelength (e.g.,red light), AC_(IR) is the AC component of the detected energycorresponding to a different wavelength (e.g., infrared light), andDC_(IR) is the DC component of the detected energy corresponding to thedifferent wavelength (e.g., infrared light). In some embodiments, the ACcomponent may be selected as the highest spectral line in the cardiacfrequency band. Waveform analysis may be performed to determine the R-Rinterval defined by two successive AC components, an elapsed intervaland the probation, if there is any.

It will be appreciated that analysis may be performed by the analyzerand/or any other digital device (e.g., user device or a blood metricsserver such as blood metrics server 906).

State space estimation and progression may be performed to determineblood metrics. A system may be modeled according to Equation (3):

x(n+1)=f[x(n)]+u(n)y(n)=h[x(n)]+v(n)  (3),

where x(n) represents the state of the system, u(n) is process noise,y(n) is the vector of the observed signals, and v(n) is the measurementnoise.

Table 1 lists one or more parameters for x(n) as well as their initialvalue in some embodiments:

TABLE 1 Parameter Symbol Initial Value Cardiac frequency f_(HR) 1 HzCardiac phase θ_(HR) 0 Cardiac harmonic I_(Harmonic) ^(HR) 0 amplitudeCardiac Pulse P_(HR) 1 Pressure Point Blood Pressure P_(Point) 1Respiratory f_(Resp) 0.3 Hz frequency Respiratory phase θ_(Resp) 0Wavelength i = 1 . . . N I_(λ) _(i) ^(AC) 0.5 max_value AC peakamplitude Wavelength i = 1 . . . N pos_(λ) _(i) ^(AC) Corresponding FFTAC peak location bin to 1 Hz Wavelength i = 1 . . . N I_(λ) _(i) ^(DC)0.5 max_value DC Wavelength i = 1 . . . N I_(λ) _(i) ^(p2p) 1 ADC readp2p amplitude Wavelength i = 1 . . . N τ_(λ) _(i) ^(rise) 0.1 sec risetime Wavelength i = 1 . . . N c_(λ) _(i) 1 Significance coefficientWavelength i = 1 . . . N T_(λ) _(i) ^(HRV) 1 sec HRV Best Ratio pHBR_(pH) 2 Best Ratio pCO2 BR_(pCO2) 3 Best Ratio pHCO3− BR_(pHCO3) ⁻ 4Acceleration I_(move) 0 magnitude GPS velocity |v|_(GPS) 0 GPS altitude|alt|_(GPS) 0 GPS acceleration |a|_(GPS) 0 GPS incline |incline|_(GPS) 0Restfulness Rest 0 Hydration Hyd 0 Systolic Blood SBP 120 mmHg PressureDiastolic Blood DBP 80 mmHg Pressure End tidal CO2 ETCO2 40 mmHg BloodCarbon SpCO 0% Monoxide

Table 2 lists one or more parameters for y(n) as well as their initialvalue in some embodiments:

TABLE 2 Parameter Symbol Initial Blood pH pH 7.35 Blood PCO2 pCO₂ 24mmol Blood PO2 pO₂ 24 mmol Blood PHCO3− pHCO₃ ⁻ 24 mmol Blood GlucosepC₆H₁₂O₆  3 mmol Cardiac Frequency f_(HR) 1 Point Blood PressureP_(Point) 1 Respiratory f_(Resp) 0.3 Frequency GPS velocity |v|_(GPS) 0GPS altitude |alt|_(GPS) 0 GPS acceleration |a|_(GPS) 0 GPS incline|incline|_(GPS) 0

Table 3 lists the state space model F(X(n)) between the parameterslisted in Table 1 and Table 2 in some embodiments, where the energywavelengths comprise 880 nm, 631 nm, 1450 nm, and 1550 nm:

TABLE 3 Name Symbol Equation Cardiac frequency f_(HR)${bin\_ to}{\_ freq}\left( \frac{{\Sigma c}_{\lambda_{i}}{pos}_{\lambda_{i}}^{A\; C}}{{\Sigma c}_{\lambda_{i}}} \right)$Cardiac θ_(HR) θ_(HR)(n − 1) + f_(s) ⁻¹ * ω*, where ω* ε [ω_min, ω_max]phase Cardiac harmonic amplitude I_(Harmonic) ^(HR)$\frac{{\Sigma c}_{\lambda_{i}}I_{\lambda_{i}}^{p\; 2p}}{{\Sigma c}_{\lambda_{i}}}$Cardiac Pulse Pressure P_(HR)$\left( \frac{{\Sigma c}_{\lambda_{i}}\tau_{\lambda_{i}}^{rise}}{{\Sigma c}_{\lambda_{i}}} \right)\hat{}\; {- 1}$Point Blood P_(Point) τ_(λ) ₁ ^(rise) ⁻¹ Pressure Respiratory f_(Resp)3) Respiratory and Heart Rate State Models: The fluctua- frequency tionsin the respiratory rate ω_(r)(n) and fluctuations in the heart rateω_(ca)(n) that are not due to RSA, are both modeled as a first-orderautoregressive process with a mean and mild nonlin- earity that limitthe frequencies to know physiologic ranges ω_(r)(n + 1) = ω _(r) +α_(r){s_(r)[ω_(r)(n)] − ω _(r)} + u_(ω) _(r) (n) (15) ω_(ca)(n + 1) = ω_(c) + α_(c){s_(c)[ω_(ca)(n)] − ω _(c)} + u_(ω) _(ca) (n) (16) where ω_(r) and ω _(c) are the a priori estimates a the expected res- piratoryand cardiac frequencies, respectively; α_(r) and α_(c) con- trol thebandwidth of the frequency fluctuations; and u_(ω) _(r) (n) and u_(ω)_(ca) (n) are white noise processes that model the random vari- ation inthe respiratory and cardiac frequencies, respectively. The instantaneousrespiratory and heart rates in units of Hz are then${f_{r}(n)} = {\frac{1}{2{\pi T}_{s}}{s_{r}\left\lbrack {\omega_{r}(n)} \right\rbrack}}$(17)${f_{c}(n)} = {\frac{1}{2{\pi T}_{s}}{{s_{c}\left\lbrack {\omega_{c}(n)} \right\rbrack}.}}$(18) Respiratory θ_(Resp) θ_(Resp)(n − 1) + f_(s) ⁻¹ * ω*, where ω* ε[ω_min, ω_max] phase λ = 880 nm I_(λ) _(i) ^(AC) From FFT AC peak λ =880 nm pos_(λ) _(i) ^(AC) From FFT DC λ = 880 nm I_(λ) _(i) ^(DC) FromWaveform analysis p2p amplitude λ = 880 nm I_(λ) _(i) ^(p2p) FromWaveform analysis rise time λ = 880 nm τ_(λ) _(i) ^(rise) From Waveformanalysis signal trend λ = 880 nm c_(λ) _(i) From Waveform analysisSignificance coefficient λ = 880 nm T_(λ) _(i) ^(HRV) From Waveformanalysis HRV λ = 631 nm I_(λ) _(i) ^(AC) From Fast FourierTransformation (“FFT”) AC peak λ = 631 nm pos_(λ) _(i) ^(AC) From FFT DCλ = 631 nm I_(λ) _(i) ^(DC) From Waveform analysis p2p amplitude λ = 631nm I_(λ) _(i) ^(p2p) From Waveform analysis rise time λ = 631 nm τ_(λ)_(i) ^(rise) From Waveform analysis signal trend λ = 631 nm c_(λ) _(i)From Waveform analysis Significance coefficient λ = 631 nm T_(λ) _(i)^(HRV) From Waveform analysis HRV λ = 1450 nm I_(λ) _(i) AC From FFT ACpeak λ = 1450 nm pos_(λ) _(i) ^(AC) From FFT DC λ = 1450 nm I_(λ) _(i)^(DC) From Waveform analysis p2p amplitude λ = 1450 nm I_(λ) _(i) ^(p2p)From Waveform analysis rise time λ = 1450 nm τ_(λ) _(i) ^(rise) FromWaveform analysis signal trend λ = 1450 nm c_(λ) _(i) From Waveformanalysis Significance coefficient λ = 1450 nm T_(λ) _(i) ^(HRV) FromWaveform analysis HRV λ = 1550 nm I_(λ) _(i) ^(AC) From FFT AC peak λ =1550 nm pos_(λ) _(i) ^(AC) From FFT DC λ = 1550 nm I_(λ) _(i) ^(DC) FromWaveform analysis p2p amplitude λ = 1550 nm I_(λ) _(i) ^(p2p) FromWaveform analysis rise time λ = 1550 nm τ_(λ) _(i) ^(rise) From Waveformanalysis signal trend λ = 1550 nm c_(λ) _(i) From Waveform analysisSignificance coefficient λ = 1550 nm T_(λ) _(i) ^(HRV) From Waveformanalysis HRV Best Ratio BR_(pH) Device Calibration pH Best RatioBR_(pCO2) Device Calibration pCO2 Best Ratio BR_(pHCO3) ⁻ DeviceCalibration pHCO3− Acceleration I_(move) From Accelerometer magnitudeGPS velocity |v|_(GPS) From GPS GPS altitude |alt|_(GPS) From GPS GPS|a|_(GPS) From GPS acceleration GPS incline |incline|_(GP) From GPS

Table 4 lists Y(n)=H(x(n)):

TABLE 4 Name Symbol Equation Blood pH pH$6.1 + {\log \left( \frac{{pHCO}_{3}^{-}}{0.03{pCO}_{2}} \right)}$Blood PCO2 pCO₂$\frac{\varepsilon_{Hb}^{{CO}_{2}} - {\varepsilon_{Hb}^{Hb}*I_{\lambda_{{CO}_{2}}}^{A\; C}*{I_{\lambda_{1}}^{D\; C}/\left( {I_{\lambda_{1}}^{A\; C}*I_{\lambda_{{CO}_{2}}}^{D\; C}} \right)}}}{\varepsilon_{Hb}^{{CO}_{2}} - \varepsilon_{{CO}_{2}}^{{CO}_{2}} + {\left( {\varepsilon_{{CO}_{2}}^{Hb} - \varepsilon_{Hb}^{Hb}} \right)*I_{\lambda_{{CO}_{2}}}^{A\; C}*{I_{\lambda_{1}}^{D\; C}/\left( {I_{\lambda_{1}}^{A\; C}*I_{\lambda_{{CO}_{2}}}^{D\; C}} \right)}}}$Blood PO2 pO₂$\frac{\varepsilon_{Hb}^{O_{2}} - {\varepsilon_{Hb}^{Hb}*I_{\lambda_{O_{2}}}^{A\; C}*{I_{\lambda_{1}}^{D\; C}/\left( {I_{\lambda_{1}}^{A\; C}*I_{\lambda_{O_{2}}}^{D\; C}} \right)}}}{\varepsilon_{Hb}^{O_{2}} - \varepsilon_{O_{2}}^{O_{2}} + {\left( {\varepsilon_{O_{2}}^{Hb} - \varepsilon_{Hb}^{Hb}} \right)*I_{\lambda_{O_{2}}}^{A\; C}*{I_{\lambda_{1}}^{D\; C}/\left( {I_{\lambda_{1}}^{A\; C}*I_{\lambda_{O_{2}}}^{D\; C}} \right)}}}$Blood PHCO3− pHCO₃ ⁻$\frac{\varepsilon_{Hb}^{{HCO}_{3}^{-}} - {\varepsilon_{Hb}^{Hb}*I_{\lambda_{{HCO}_{3}^{-}}}^{A\; C}*{I_{\lambda_{1}}^{D\; C}/\left( {I_{\lambda_{1}}^{A\; C}*I_{\lambda_{{HCO}_{3}^{-}}}^{D\; C}} \right)}}}{\varepsilon_{Hb}^{{HCO}_{3}^{-}} - \varepsilon_{{HCO}_{3}^{-}}^{{HCO}_{3}^{-}} + {\left( {\varepsilon_{{HCO}_{3}^{-}}^{Hb} - \varepsilon_{Hb}^{Hb}} \right)*I_{\lambda_{{HCO}_{3}^{-}}}^{A\; C}*{I_{\lambda_{1}}^{D\; C}/\left( {I_{\lambda_{1}}^{A\; C}*I_{\lambda_{{HCO}_{3}^{-}}}^{D\; C}} \right)}}}$Blood Glucose pC₆H₁₂O₆ As above Cardiac f_(HR) As in f(x(n)) FrequencyPoint Blood P_(Point) As in f(x(n)) Pressure Respiratory f_(Resp) As inf(x(n)) Frequency GPS velocity |v|_(GPS) As in f(x(n)) GPS altitude|alt|_(GPS) As in f(x(n)) GPS |a|_(GPS) As in f(x(n)) acceleration GPSincline |incline|_(GPS) As in f(x(n))

As illustrated in Tables 3 and 4, by generating energy at differentwavelengths, one or more blood metrics may be determined from thedetected energy. For example, cardiac frequency, cardiac phase, cardiacharmonic amplitude, cardiac pulse pressure, point blood pressure,respiratory frequency, respiratory phase, blood pH, blood pCO₂, bloodpHCO₃₋, or blood glucose, may be determined.

In step 1110, the blood metrics measurement apparatus provides thegenerated one or more signals for blood pressure calculation. In someembodiments, a communication module (e.g., communication module 1008)provides the one or more signals (e.g., to a blood pressure calculationsystem and/or user device).

FIG. 12 depicts a block diagram 1200 of a user device 904 according tosome embodiments. Generally, the user device 904 may be configured todisplay, or otherwise present blood pressure values, messages, alerts,and/or the like. The user device 904 may also provide registrationfeatures allowing a user to register a blood metrics measurement device902, create and/or update a user account, and communicate with othersystems of the system and environment 900. In some embodiments, the userdevice 904 includes a user interface module 1202, a registration module1204, a blood pressure calculation system 1206, and a communicationmodule 1208. In some embodiments, the blood metrics measurement device902 may include all or part of the blood pressure calculation system1206.

The user interface module 1202 may be configured to present imagesand/or audio corresponding to health data, such as blood pressurevalues, messages, alerts, and the like. For example, the user interfacemodule 1202 may display one or more graphical user interfaces (GUIs) topresent a calculated blood pressure to a user. Example user interfacesare described further with reference to FIG. 5-7, discussed above.

The registration module 1204 may be configured to generate registrationrequests to create, read, update, delete, or otherwise access,registration records associated with user accounts (e.g., a user accountassociated with a user of the user device 904 and/or the blood metricsmeasurement apparatus 902) and registration records associated with theblood metrics measurement apparatus 902. In some embodiments, a userinputs user account registration information and blood metricsmeasurement apparatus registration information via the user interfacemodule 1202. For example, user account registration information mayinclude geographic attributes, demographic attributes, psychographicattributes, and/or behavioristic attributes. Accordingly, user accountregistration information may include some or all of the followingattributes:

-   -   User Account Identifier: Identifier that identifies a user        account.    -   Password: Password, or other personal identifier, used to        authenticate the user account. For example, it may an        alphanumerical password, biometric data (e.g., fingerprint,        etc.). In some embodiments, readings or measurements from the        blood metrics measurement apparatus 902 may be used to        authenticate the user account.    -   Device Identifier(s): Identifier(s) that identify one or more        blood metric measurement apparatus' associated with the user        account.    -   Name: A name of the user.    -   DOB: A date of birth of the user.    -   Age: An age of the user.    -   Gender: Gender of the user (e.g., female, male, transgender, or        the like).    -   Weight: A weight of the user.    -   Height: A height of the user.    -   Skin color: A skin color of the user.    -   Activity Level: An activity level of the user (e.g., sedentary,        lightly active, active, very active, and so forth).    -   Geographic location: A location of the user (e.g., as determined        by a location service and/or specified by the user).    -   Blood Pressure Profile: Hypertensive, Hypotensive, Normal or        unknown.    -   Blood Glucose Profile (e.g., Diabetes information)    -   Wrist circumference: Circumference of the user's wrist.

In some embodiments, the blood metrics measurement apparatusregistration information includes some or all of the followingattributes:

-   -   Apparatus Identifier: Identifier that identifies a blood metrics        measurement apparatus.    -   User Account Identifier: Identifier that identifies a user        account associated with the blood metrics measurement apparatus.    -   Geographic location: A current location of the blood metrics        measurement apparatus (e.g., as determined by a location service        and/or specified by the user).    -   Settings: One or more settings of the blood measurement metrics        apparatus.

For example, some or all of the settings may be automatically determinedbased on one or more user account attributes (e.g., height, weight, orthe like) and/or by the user.

The blood pressure calculation system 1206 may be configured tocalculate blood pressure values (e.g., systolic, diastolic), andgenerate messages or alerts based on those values. An example of theblood pressure calculation system 1206 is discussed further below withreference to FIG. 14.

The communication module 1208 may be configured to send requests to andreceive data from one or a plurality of systems. The communicationmodule 1208 may send requests to and receive data from a systems througha network or a portion of a network. Depending uponimplementation-specific or other considerations, the communicationmodule 1208 may send requests and receive data through a connection(e.g., the communication network 908, and/or the communication link910), all or a portion of which may be a wireless connection. Thecommunication module 1208 may request and receive messages, and/or othercommunications from associated systems.

FIG. 13 depicts a flowchart 1300 of an example method of operation of auser device (e.g. user device 904) according to some embodiments.

In step 1302, a user device registers a blood metrics measurementapparatus (e.g., blood metrics measurement apparatus 902). In someembodiments, input from a user is received by a user interface module(e.g., user interface module 1202) that triggers a registration module(e.g., registration module 1204) to generate a registration request toassociate the blood metrics measurement apparatus with a user and/or theuser device. The registration request may include, for example, one ormore blood metrics measurement apparatus attributes. In someembodiments, a communication module (e.g., communication module 1208)provides the registration request to a blood metrics server (e.g., bloodmetrics server 906) for processing.

In step 1304, the user device receives one or more signals from theregistered blood metrics measurement apparatus. In some embodiments, theone or more signals comprise optical signals (e.g., multi-channel PPGsignals) and/or one or more non-optical signals (e.g., multi-channelpressure pulse signals). In some embodiments, the one or more signalsmay be received by the communication module.

In step 1306, the user device calculates one or more arterial bloodpressure values (e.g., systolic values and/or diastolic values) based onthe received one or more signals. In some embodiments, a blood pressurecalculation system (e.g., blood pressure calculation system 1206)calculates the one or more arterial blood pressure values. Although thisexample depicts the user device calculating the one or more arterialblood pressure values, it will be appreciated that one or more othersystems having the functionality of a blood pressure calculation systemmay perform the calculation. For example, in some embodiments, the bloodpressure measurement apparatus and/or the blood metrics server mayinclude such functionality and perform the calculation.

In step 1308, the user device presents a blood pressure message to theuser based on at least one of the one or more calculated arterial bloodpressure values. For example, the message may include some or all of thearterial blood pressure values, alerts (e.g., high BP, low BP, good BP,poor BP, etc.) based on one or more of the calculated values, and soforth. In some embodiments, the user device presents (e.g., via images,audio, vibrations, etc.) the blood pressure message or alert to the uservia the user interface module, or other feature of the user device.

FIG. 14 depicts a block diagram 1400 of a blood pressure calculationsystem 1206 according to some embodiments. Generally, the blood pressurecalculation system 1206 may be configured to calculate arterial bloodpressure values of a user. The blood pressure calculation system 1206may also store calculated arterial blood pressure values (e.g., forhealth tracking, etc.), and communicate with other systems of the systemand environment 900. In some embodiments, the blood pressure calculationsystem 1206 includes a management module 1402, a signal database 1404, awave database 1406, a wave feature database 1408, a feature vectordatabase 1410, a blood pressure model database 1412, a blood pressureresults database 1414, a rules database 1416, a pre-processing module1418, a wave selection module 1420, a feature extraction module 1422, ablood pressure processing module 1424, and a communication module 1426.

The management module 1402 may be configured to manage (e.g., create,read, update, delete, or access) signal records 1428 stored in thesignal database 1404, wave records 1430 stored in the wave database1406, wave feature records 1432 stored in the wave feature database1408, feature vector records 1434 stored in the feature vector database1410, empirical blood pressure model records 1436 stored in the bloodpressure model database 1412, blood pressure result records 1438 storedin the blood pressure results database 1414, and/or rules 1440-1448stored in rules database 1416. The management module 1402 may performthese operations manually (e.g., by an administrator interacting with aGUI) and/or automatically (e.g., by one or more of the modules1418-1424). In some embodiments, the management module 1402 comprises alibrary of executable instructions which are executable by a processorfor performing any of the aforementioned management operations. Thedatabases 1404-1416 may be any structure and/or structures suitable forstoring the records 1428-1438 and/or the rules 1440-1448 (e.g., anactive database, a relational database, a table, a matrix, an array, aflat file, and the like).

The signal records 1428 may include a variety of signals, along withassociated metadata. For example, the signals may comprise opticalsignals (e.g., single-channel and/or multi-channel PPG signals) and/ornon-optical signals (e.g., pressure pulse signals). In some embodiments,the metadata may include information obtained from the signals, such asheart rate(s) of an associated user. For example, the signal records1428 may store some or all of the following information:

-   -   Signal(s) Identifier: Identifier that identifies the stored        signal(s).    -   Signal(s): one or more signals. The signals may be raw signals        (e.g., as detected by the associated blood pressure measurement        apparatus), filtered or pre-processed signals (e.g., to remove        noise from the signals), and/or normalized signal values (e.g.,        between 0-1). An example “noisy” (i.e., unfiltered) PPG signal        and an example filtered PPG signal are shown in FIG. 21. It will        be appreciated that as used in this paper, a “signal,” such as a        PPG signal or pressure pulse signal, generally refers to a        filtered signal, although in some embodiments, it may also refer        to an unfiltered signal instead of, or in addition to, the        filtered signal.    -   Set(s) of Waves: one or more sets of waves of a predetermined        time series (e.g., 8 seconds) of the signal(s). The set of waves        may include raw waves, filtered waves, and/or normalized wave        values (e.g., between 0-1). An example set of waves is shown in        FIG. 22.    -   Apparatus Identifier: Identifier that identifies the blood        metrics measurement apparatus that generated the signals.    -   User Account Identifier: Identifier that identifies a user        account associated with the blood metrics measurement apparatus        that generated the signals.    -   Metadata: Metadata obtained from the signals, such as heart rate        or other biometric data. The metadata may also include other        information of the user, such as gender, age, height, weight,        skin color (e.g., obtained from the user's account information).        Such metadata values may be used by the blood pressure        calculation module 1424 (discussed below) to facilitate        calculation of arterial blood pressure values. In some        embodiments, metadata values may be provided to an empirical        blood pressure model (discussed below) via sets of feature        vectors (discussed below) and/or be provided separately to the        model.

The wave records 1430 may include sets of waves of a signal (e.g., asignal stored in the signal database 1404), along with subsets of thosewaves. The subsets of waves may comprise “high quality” waves obtainedfrom the waves of the signal. These subsets of waves may provide, forexample, a more accurate blood pressure calculation that just using thesignal or waves of the signal. In some embodiments, the wave records1430 may store some or all of the following information:

-   -   Signal Identifier: Identifier that identifies an associated        signal.    -   Wave Identifier(s): Identifiers for subsets of waves of the        associated signal.    -   Subset(s) of Waves: one or more subsets of waves of the        associated signal. The subsets of waves may include raw waves,        filtered waves, and/or normalized wave values (e.g., between        0-1). The subsets of waves may be referred to as “high quality”        waves. An example wave of a subset of waves is shown in FIG. 22.    -   Apparatus Identifier: Identifier that identifies the blood        metrics measurement apparatus that generated the signals.    -   User Account Identifier: Identifier that identifies a user        account associated with the blood metrics measurement apparatus        that generated the signals.

The wave feature records 1432 may include wave features of associatedsubsets of waves of a signal. For example, wave features may includewave peaks, wave valleys, wave edges, and/or the like. In someembodiments, the wave feature records 1432 may store some or all of thefollowing information:

-   -   Signal Identifier: Identifier that identifies an associated        signal.    -   Wave Identifier(s): Identifiers for the subsets of waves of the        associated signal.    -   Wave Features: one or more features obtained from the waves        within the associated subsets of waves. The wave features may        include points of the waves, such as wave peaks, wave valleys,        wave edges, and/or the like. The wave features may be stored as        normalized wave values (e.g., between 0-1). Example wave        features are shown in FIG. 23, and discussed elsewhere herein.    -   Apparatus Identifier: Identifier that identifies the blood        metrics measurement apparatus that generated the signals.    -   User Account Identifier: Identifier that identifies a user        account associated with the blood metrics measurement apparatus        that generated the signals.

The feature vector records 1434 may include sets of features generatedbased on the wave features of associated subsets of waves of a signal.In some embodiments, the feature vector records 1434 may store some orall of the following information:

-   -   Signal Identifier: Identifier that identifies an associated        signal.    -   Wave Identifier(s): Identifiers for the subsets of waves of the        associated signal.    -   Set(s) of Feature Vectors: one or more sets of feature vectors,        each feature vector comprising features extracted from a wave of        an associated subset of waves. The values of a feature vector        may include measurement values and metric values. For example,        the measurement values may correspond to amplitude or location        points of a particular wave, and the metric values may be        generated from metric functions that use at least one of the        measurement values. The values of a feature vector may comprise        normalized values (e.g., between 0-1). An example feature vector        2400 is shown in FIG. 24.    -   Apparatus Identifier: Identifier that identifies the blood        metrics measurement apparatus that generated the signals.    -   User Account Identifier: Identifier that identifies a user        account associated with the blood metrics measurement apparatus        that generated the signals.

The blood pressure model records 1436 may include one or more empiricalblood pressure models (e.g., retrieved from the blood metrics server906). The models may include various types of empirical blood pressuremodels. For example, a first type may be a “non-specific” model whichdoes not require calibration in order to be used to calculate arterialblood pressure values. A second type may be a “specific” model whichrequires calibration in order to be used to calculate arterial bloodpressure values. For example, models of the second type may requireinformation about the user, such age, weight, height, gender, skincolor, and/or the like. In some embodiments, the blood pressure records1436 may store some or all of the following information:

-   -   Model Identifier: Identifies an empirical blood pressure model.    -   Model Type: Identifies a type of model (e.g., non-specific or        specific).    -   Model Parameters: Various model parameters (e.g., decision node        parameters) and tree structures used to calculate the arterial        blood pressure values based on the sets of feature vectors        and/or other related information (e.g., gender, age, weight,        height, skin color, etc.). Example tree structures are shown in        FIG. 26.    -   Apparatus Identifier(s): Identifier(s) that identify one or more        blood metrics measurement apparatus' using the empirical blood        pressure model.    -   User Account Identifier(s): Identifier(s) that identify one or        more user account(s) associated with the blood metrics        measurement apparatus that use the empirical blood pressure        model.

The blood pressure results records 1438 may include one or morecalculated arterial blood pressure values. In some embodiments, theblood pressure results records 1438 may store some or all of thefollowing information:

-   -   Blood Pressure Result Identifier: Identifies a set of one or        more calculated arterial blood pressure values.    -   Blood Pressure Values: one or more calculated arterial blood        pressure values.    -   Date: A date and/or time the arterial blood pressure was        calculated.    -   Messages: Message identifier and/or messages generated based on        the calculated blood pressure values.    -   Signal Identifier: Identifier that identifies an associated        signal.    -   Wave Identifier(s): Identifiers for the subsets of waves of the        associated signal.    -   Feature Vectors Identifier(s): Identifiers for the one or more        sets of feature vectors used to calculate the arterial blood        pressure values.    -   Apparatus Identifier: Identifier that identifies the blood        metrics measurement apparatus that generated the signals.    -   User Account Identifier: Identifier that identifies a user        account associated with the blood metrics measurement apparatus        that generated the signals.

Pre-Processing Rules 1440

The pre-processing rules 1440 define attributes and/or functions forfiltering signals. For example, a signal may be corrupted with noisefrom various sources (e.g., high frequency ambient noise, electronicnoise, and the like). In some embodiments, the signal may be the rawsignal data from a photodiode, output of a pressure sensor, output of anaccelerometer, output of a gyroscope, and the like. The signal may befiltered to remove corrupting noise, as well as enhance a strength ofthe signal.

The pre-processing module 1418 may be configured to execute thepre-processing rules 1440. Thus, for example, the pre-processing module1418, using some or all of the associated signals and/or values storedin the signal records 1428, may filter signals and store the resultingfiltered signals. The wave database 1406 may be configured to store thesignals filtered by the pre-processing module 1418.

Wave Selection Rules 1442

The wave selection rules 1442 define attributes and/or functions forselecting (or, “extracting”) high quality waves from a set of waves of asignal. The high quality waves may form a subset of waves.

In some embodiments, signal measurements are sensitive to motion,pressure, and ambient light distortions. Noise-removal filters may notbe entirely effective when there is intense noise. It may be helpful toselect high quality signal waves from measured time-series data toreduce or eliminate the effects of motion, pressure, and/or ambientlight distortions.

In some embodiments, the wave selection rules 1442 identifies candidatewaves from a signal, and determines whether any of the candidate wavessatisfy a model match criterion (e.g., a Gaussian mixture model or groupsimilarity model). Candidate waves that pass the model match criterionmay be classified as high quality waves. In some embodiments, candidatewaves includes waves having valleys whose frequency match, orsubstantially match, the heart rate of the user or other heart ratevalue (e.g. a default heart rate value).

A group similarity model may be preferable. For example, while aGaussian mixture model may perform well with “smoothed” signals (e.g.,low pass filtered at 4-6 Hz), the Gaussian mixture model may fail, orperform poorly, if the signal includes more features. FIG. 22 depicts anexample smoothed signal 2202, and FIG. 28 depicts an example signalincluding more features (e.g., low pass filtered at 10 Hz revealingmultiple reflections including, for example, secondary peaks, such asiliac and renal reflections). In some embodiments, the Gaussian mixturemodel may be unable to match more than 2 peak results in a reflection ofwaves that reveal features critical in the prediction (or, “estimation)of blood pressure. In some embodiments, additional Gaussian mixturemodels may be incorporated to address such issues, although this maylead to added complexity in optimization (e.g., model fitting), as wellas added constraints to ensure specificity to physiologically meaningfulsignals against noise.

In some embodiments, a group similarity model may overcome some or allof the limitations described above. Generally, high quality (or highfidelity) waves that correspond with arterial blood flow correspondingto a single cycle typically occur in groups. In cases where there ismotion, it may be unlikely that an individual wave would have a highquality when waves before it were not of high quality. In the groupsimilarity model, candidate waves may be individually matched to anexisting wave buffer (e.g., of the wave database 1406). In someembodiments, the wave buffer may include some or all previous candidateswaves added in succession in a first in first out (FIFO) method. Thesize of the wave buffer may be set to include a predetermined number ofwaves (e.g., 15 waves), and may be altered. For example, increasing thewave buffer to include additional candidate waves may require thatcandidate waves match a larger set of previously extracted candidatewaves. In some embodiments, in order to measure similarity, thecandidate waves may be re-parameterized to a fixed length (e.g., using acubic spline).

In various embodiments, the group similarity model applies a similaritymeasure to determine if, and to what extent, a candidate wave matchessome or all of the existing waves in the wave buffer. In one example,the similarity measure may be an average correlation between thecandidate wave and the individual waves in the wave buffer. In otherembodiments, the similarity measure may include a like sum of squareddifferences, joint entropy or mutual information, and the like. In thisexample, if the similarity measure is greater than a threshold (e.g.0.95 for correlation), this wave is selected for further processing. Insome embodiments, both the candidate waves that are selected for furtherprocessing and the candidate waves that are not selected for furtherprocessing may be added to the wave buffer (e.g., for subsequentapplications of the group similarity model).

The group similarity model may process waves with multiple reflections(e.g., as depicted in FIG. 28). In some embodiments, the groupsimilarity model may continuously update a template (e.g., the wavebuffer) against which incoming candidate waves are matched, and thattemplate may indicate the true underlying signal, which may be differentfrom user to user, instead of relying on a predetermined template. Thegroup similarity model may reduce false positive identification ofcandidate waves relative to other models (e.g., Gaussian mixture model).

The wave selection module 1420 may be configured to execute the waveselection rules 1442. Thus, for example, the wave selection module 1420,using some or all of the associated waves and/or values stored in thesignal records 1428, may identify one or more subsets of “high quality”waves. The wave database 1406 may be configured to store the subsets ofwaves identified by the wave selection module 1420. An example result ofexecution of the wave selection rules 1442 is shown in FIG. 22.

Feature Extraction Rules 1444

The feature extraction rules 1444 define attributes and/or functions foridentifying (or, “extracting”) features from waves (e.g., high qualitywaves). In some embodiments, features may be concatenated to formfeature vectors.

Features may include, but are not limited to, pulse transit time (PTT)features, reflection features, signal level and range features, signalmetric features, optical ratio features, heart rate features, wave widthand derivative features, user information features, and/or pressurefeatures. In some embodiments, PTT features include a transit timefeature, joint entropy feature, and wave type feature. Pulse transittime may be measured as the time taken for the pulse pressure wave topropagate along the length of the arterial tree. For example, this maybe the difference in time between the onset of the R-wave on ECG, andthe pulse wave peak on the finger. In other embodiments, the transittime may be measured as the time taken for blood to travel from oneLED-PD system to another LED-PD system (e.g., as depicted in FIG. 10B),which may be separated from each other by a predetermined distance(e.g., 15 mm). Sampling at a very high rate (>2 KHz) may help resolvefeatures in both LED-PD systems. In some embodiments, the transit timemay be measured as (1) the distance between the valleys in thecorresponding waves in respective LED-PD systems at the start of thesystolic cycle, and/or (2) the distance between the peaks in firstderivatives between the two LED-PD systems. The transit time may beexpressed in any units (e.g., milliseconds).

The joint entropy feature may be a measurement of similarity betweenfast channels of respective LED-PD systems. High pulse pressure maycorrelate with low entropy or high mutual information shared between thefast LED channels. The joint entropy feature may be expressed in bytes.

Wave type features may include different types of waves. For example,different types of waves may include slow type waves and fast typewaves. In some embodiments, the wave types feature quantifies therelative position of the systolic peak within the wave (0<WaveType<1)for each of the fast channels in respective LED-PD systems, where smallvalues correspond to a slow type waves and larger values correspond tofast type waves.

A pulse decomposition may track a pulse pressure wave. As the pressurewave travels in the arterial systems, it may encounter branching pointswhere the diameter of arteries may decrease rapidly. The pressure wavemay bounce on such branching points and send reflection waves indifferent (e.g., opposite) directions. In some embodiments, the originalpressure wave plus the reflections may form the observed pressure pulse,which in turn may be observed in a signal (e.g., PPG signal). Multiplereflections (e.g., four reflections) may be used to identify multiplefeatures and amplitudes (e.g., four features and four amplitudes). Thetime of occurrence of the systolic peak from the start of the systoliccycle (i.e., systolic peak time) may also be included as a feature. Insome embodiments, a ratio between the second derivatives at the bottomand peak of the systolic cycle may be used as a feature. This featuremay be correlated with arterial stiffness. In some embodiments, tenfeatures may be individually identified for each LED channel.

The signal level and range features may comprise the mean value andrange of a signal (e.g., PPG signal) determined for each of thechannels. In some embodiments, the signal metrics features includeHjorth parameters, perfusion, kurtosis, and energy features. Hjorthparameters may describe activity, mobility and complexity of the signal,and are commonly used tools in EEG analysis. Perfusion may be measuredas the ratio between the AC and DC components of the signal (i.e. therange of the signal and the mean). Kurtosis may be measured over thesignal analysis window. Energy features may include variance of thesignal measured over the analysis window. In some embodiments, opticalratio features may be calculated as the ratio of the range of the LEDs(measured in pairs across wavelengths) after normalization of therespective signals, and heart rate features may be an actual user heartrate or a default heart rate.

In some embodiments, the wave width and derivative features may includetime distances within a wave to its main peak at different amplitudelocations. One example is shown in FIG. 25A for 0% amplitude location.In FIG. 25A, d1 and d2 represent the distance between the rising(falling) edge value of the wave and its main (systolic) peak. Thesecondary (diastolic) peak may be extracted from the first orderderivative (FOD) of the wave. For this, FOD may be smoothed (e.g., asimple moving average filter may be used). In some embodiments, afterextracting main (systolic) and secondary (diastolic) peaks, reflection(augmentation) index (the ratio of diastolic peak and systolic peakamplitudes), inflection point area ratio (the ratio of areas under thewave that are separated by the diastolic inflection point), and/orstiffness index (the ratio of patient's height to the time distancebetween the systolic and diastolic peaks) may be determined from thefirst order derivative of the wave.

In the example of FIG. 25C, the second order derivative of the wave hasmultiple peaks and valley points (e.g., labeled (a), (b) and (e)). Insome embodiments additional peak and valleys may be present. If thesampling frequency is low or under exercise conditions (e.g., about 25Hz in FIG. 25C), only waves (a), (b) and (e) may be identifiable. Insome embodiments, for higher sampling frequencies (e.g., ≧200 Hz),additional peaks and valleys may be identifiable. The ratio of thesevalues may be included into a feature vector.

As indicated, an example selected (or, extracted) wave, first orderderivative of the selected wave, and the second derivative of theselected wave are shown in FIGS. 25A-C, respectively.

In some embodiments, if two LEDs at the same wavelength are positionedat different locations of the same artery, a phase shift may be obtainedbetween the measured signals (e.g., due to blood flow). This mayfacilitate calculation of pulse wave velocity (PWV) and/or pulse transittime (PTT), both of which may be included in a feature vector, and/orotherwise provided to the empirical blood pressure model used tocalculate arterial blood pressure values.

The user information features may include, for example, a user's gender,age, skin color, height and/or weight. The user information may beincluded in a feature vector, and/or otherwise provided to the empiricalblood pressure model used to calculate arterial blood pressure values.In some embodiments, pressure features may include the mean value of thepressure signal over the analysis window (or “baseline mean”) and rangeof the pressure signal over the analysis window (or, “AC”).

The feature extraction module 1422 may be configured to execute thefeature extraction rules 1444. Thus, for example, the feature extractionmodule 1420, using some or all of the associated subsets of waves and/orvalues stored in the wave records 1430, may identify one or more featureof the waves within the subsets of waves, and generate correspondingsets of feature vectors. An example of a feature vector 2400 is shown inFIG. 24. The wave feature database 1408 may be configured to store thewave features identified by the feature extraction module 1422, and thefeature vector database 1410 may be configured to store the generatedsets of feature vectors.

Blood Pressure Processing Rules 1446

The blood pressure processing rules 1446 define attributes and/orfunctions for calculating arterial blood pressure values of a user. Insome embodiments, the blood pressure processing rules 1446 specify,identify, and/or define the empirical blood pressure model to use forcalculating arterial blood pressure of a user. The rules 1446 mayfurther define input values for the empirical blood pressure model. Forexample, input values may comprises the sets of features vectors, and/orother attributes of the user (e.g., age, gender, height, weight, skincolor, etc.), assuming such attributes have not been included in thefeature vectors.

The blood pressure processing module 1424 may be configured to executethe blood pressure processing rules 1446. Thus, for example, the bloodpressure processing module 1424, using an empirical blood pressure modelstored in the blood pressure model database 1412, along with some or allof the associated sets of feature vectors and/or values stored in thefeature vector records 1438, may calculate one or more arterial bloodpressure values. The blood pressure results database 1414 may beconfigured to store the blood pressure values calculated by the bloodpressure processing module 1424.

Message Rules 1448

The message rules 1448 define attributes and/or functions for generatingmessages and/or alerts based on arterial blood pressure values. In someembodiments, the message rules 1448 may define rules that cause theblood pressure calculation system 1206 to provide calculate bloodpressure values to a user. In some embodiments, the message rules 1448may include threshold values and/or conditions that when exceeded and/orsatisfied, trigger a message or alert. For example, a threshold value(or value range) and/or threshold condition may be associated withvarying blood pressure levels (e.g., hypotension, normal blood pressure,prehypertension, stage 1 hypertension, stage 2 hypertension, etc.), anda calculated blood pressure value which satisfies a correspondingthreshold condition or value may trigger a message or alert (e.g.,indicating the corresponding blood pressure level).

In some embodiments, the communication module 1426 may be configured toexecute the message rules 1448. Thus, for example, the communicationmodule 1420, using some or all of the blood pressure values stored inthe blood pressure results records 1438, may generate one or moremessages. The communication module 1426 may be configured to providethose messages to a user.

In some embodiments, the communication module 1426 may be configured tosend requests to and receive data from one or a plurality of systems.The communication module 1426 may send requests to and receive data froma systems through a network or a portion of a network. Depending uponimplementation-specific or other considerations, the communicationmodule 1426 may send requests and receive data through a connection(e.g., the communication network 908, and/or the communication link910), all or a portion of which may be a wireless connection. Thecommunication module 1426 may request and receive messages, and/or othercommunications from associated systems.

FIG. 15A depicts a flowchart 1500 of an example method of operation of ablood pressure calculation system (e.g., blood pressure calculationsystem 1206) according to some embodiments.

In step 1502, the blood pressure calculation system stores one or moreempirical blood pressure models. For example, the one or more empiricalblood pressure models may be received from a blood metrics server (e.g.,blood metrics server 906), and may comprise specific or non-specificempirical blood pressure models. In some embodiments, a managementmodule (e.g., management module 1402) stores the one or more empiricalblood pressure models in a blood pressure model database (e.g., bloodpressure results database 1414), and/or a communication module (e.g.,communication module 1426) receives the one or more empirical bloodpressure models.

In step 1504, the blood pressure calculation system receives a firstsignal (e.g., a single-channel or multi-channel PPG signal) and a secondsignal (e.g., a single-channel or multi-channel PPG signal). Forexample, the first signal may comprise a 7-channel PPG signal generatedfrom light energy emitted at seven different wavelengths (e.g., 523 nm,590 nm, 623 nm, 660 nm, 740 nm, 850 nm, 940 nm) from one or more lightsources (e.g., seven different LEDs), and the second signal may comprisea PPG signal generated from light energy generated from an additionallight source (e.g., LED) at the same, or substantially similar,wavelength as one the wavelengths of the first signal. Usingmulti-channel signals and/or different light sources may help ensure,for example, that good quality signals may be obtained in a variety ofcircumstances (e.g., a user moving, walking, running, sleeping, and soforth). By way of further example, the first and/or second signals maycomprise a pressure pulse signal. In some embodiments, a communicationmodule communication module (e.g., communication module 1426 and/orcommunication module 1208) receives the first and second signals from ablood metrics measurement apparatus (e.g., blood metrics measurementapparatus 902).

In step 1504, the blood pressure calculation system pre-processes (or,filters) the first and second signals. In some embodiments, apre-processing module executes pre-processing rules to filter the firstand second signals. An example filtering method is shown and describedwith reference to FIG. 15B.

In steps 1508-1510, the blood pressure calculation system identifies afirst subset of waves (or, “high quality” waves) from a first set ofwaves of the first signal and a second subset of waves (or, “highquality” waves) from a second set of waves of the second signal. Each ofthe first subset of waves may represent a separate approximation of anaverage of the first set of waves over a first predetermined amount oftime (e.g., 8 seconds). Similarly, each of the second subset of wavesmay represent a separate approximation of an average of the second setof waves over a second predetermined amount of time (e.g., 8 seconds).In some embodiments, the first and second predetermined amounts of timemay be the same or they may be different. In some embodiments, a waveselection module (e.g., wave selection module 1420) identifies thesubsets of waves.

In steps 1512-1514, the blood pressure calculation system generates afirst set of feature vectors and a second set of feature vectors. Thefirst set of feature vectors may be generated from the first subset ofwaves, and the second set of feature vectors may be generated from thesecond subset of waves. Each of the feature vectors may includemeasurement values and/or metric values. For example, the measurementvalues may correspond to amplitude (e.g., peak-to-peak amplitude, peakamplitude, semi-amplitude, root mean square amplitude, pulse amplitude,etc.) and/or location points of a particular wave (e.g., a correspondinghigh quality wave), and the metric values may be generated from metricfunctions that use at least one of the measurement values. In someembodiments, a feature extraction module (e.g., feature extractionmodule 1420) generates the sets of feature vectors.

In some embodiments, measurement values may include wave peak locationsand/or amplitudes, wave valley locations and/or amplitudes, a wave'sfirst or higher order derivative peak locations and/or amplitudes, awave's first or higher order derivative valley locations and/oramplitudes, and/or or first or higher order moments of a wave. Invarious embodiments, the metric functions may include one or moreparticular metric functions that calculate a distance between aplurality of measurement values. For example, a metric function maycalculate a distance between location points of a particular wave (e.g.,a particular wave peak and a particular wave valley).

In step 1516, the blood pressure calculation system may select anempirical blood pressure model. For example, the blood pressurecalculation system may select an empirical blood pressure model from theone or more empirical blood pressure models stored in the blood pressuremodel database. In some embodiments, a blood pressure processing module(e.g., blood pressure processing module 1422) selects the empiricalblood pressure model.

In some embodiments, the blood pressure calculation system may operatein different modes. For example, in a first mode of operation, the bloodpressure calculation system may utilize a non-specific type of empiricalblood pressure model which does not require further calibration in orderto be used to calculation arterial blood pressure values. Accordingly,in such a first mode of operation, selecting the empirical bloodpressure model may comprise selecting the non-specific empirical bloodpressure model from the empirical blood pressure models stored in theblood pressure database. To continue the example, in a second mode ofoperation, the blood pressure calculation system may utilize a specifictype of empirical blood pressure model which requires at least somecalibration prior to being used to calculate arterial blood pressurevalues. In such a second mode of operation, selecting an empirical bloodpressure model may comprise selecting an empirical blood pressure modelfrom the one or more blood pressure models stored in the blood pressurebased on one or more attributes of the user (e.g., gender, weight,height, skin color, and/or age) and/or other parameters. In someembodiments, a blood pressure processing module (e.g., blood pressureprocessing module 1422) selects the empirical blood pressure model.

In step 1518, the blood pressure calculation system calculates one ormore arterial blood pressure values based on the first set of featurevectors, the second set of feature vectors, and an empirical bloodpressure calculation model (e.g., the model selected in step 1516). Forexample, the empirical blood pressure calculation model may beconfigured to receive the first set of feature vectors and the secondset of feature vectors as input values. In some embodiments, the bloodpressure processing module calculates the one or more arterial bloodpressure values.

In step 1520, the blood pressure calculation system may generate and/orprovide a message including or being based on the arterial bloodpressure. In some embodiments, the communication module generates and/orprovides the message to a user.

FIG. 15B depicts a flowchart 1530 of an example method of pre-processing(or, “filtering”) a signal according to some embodiments. Although onlyone signal is discussed here, it will be appreciated that multiplesignals may be filtered (e.g., simultaneously) using some or all of thesteps described below.

In step 1532, a blood pressure calculation system 1206 receives a signalat least partially corrupted with noise (or, a “noisy” signal). Forexample, the signal may be an output from a photodiode, a pressuresensor, an accelerometer, a gyroscope, or the like. The noise mayinclude one or more types of noise, such as high frequency ambientnoise, electronic noise, and so forth. For example, the noise may bemotion-related noise associated with venous blood movement, changes insensor coupling with the tissue of the user, and so forth. In someembodiments, a communication module (e.g., communication module 1426)receives the signal from a blood metrics measurement apparatus.

In step 1534, the blood pressure calculation system 1206 generatesand/or applies a low pass filter to the signal. For example, the bloodpressure calculation system 1206 may apply a finite impulse response(FIR) low pass filter with a predetermined cut off frequency (e.g., 10Hz) or frequency range (e.g., 6 Hz-12 Hz). In some embodiments, the lowpass filter may be configured to pass signals having a frequency lowerthan the predetermined cut off frequency, and/or configured to attenuatesignals having frequencies higher than the cutoff frequency. In someembodiments, a pre-processing module applies the low pass filter.

In step 1536, the blood pressure calculation system 1206 normalizes thesign. For example, the blood pressure calculation system may normalizesthe signal by subtracting and dividing by the mean (DC) value of thesignal. In some embodiments, the pre-processing module 1418 normalizesthe signal.

In step 1538, the blood pressure calculation system 1206 inverts thesignal. For example, the blood pressure calculation system may invertthe signal such that an increasing in amplitude corresponds with anincrease in volume in the arteries. In some embodiments, thepre-processing module 1418 inverts the signal.

In step 1540, the blood pressure calculation system 1206 applies a highpass filter to the signal. In some embodiments, the high pass filter maybe configured to pass signals having a frequency higher than a certaincutoff frequency, and/or configured to attenuate signals havingfrequencies lower than the cutoff frequency. For example, the high passfilter may be an FIR filter having a predetermined cut off frequency(e.g., 0.6 Hz). In another example, the high pass filter may be aSavitzksy-Golay filter configured to remove low frequency fluctuationsarising from respiration rate.

In step 1542, the blood pressure calculation system 1206 performs ablind source separation on the signal to isolate signals associated witharteries from the venous pulsations. In some embodiments, this step doesnot apply to non-optical signals. In various embodiments, signals maytypically contain both venous and arterial components to varyingdegrees, and signal data collected from a channel may be dependent onthe position on the tissue of a user where the data is collected, aswell as the wavelength of the light source, which may have an effect onthe depth of penetration of that light wavelength into tissue, as wellas scattering. If a channel is composed of two independent components(e.g., arterial and venous signals), the components may be isolated byusing multiple channels using independent component analysis. In someembodiments, the pre-processing module performs the blind sourceseparation.

In step 1544, the blood pressure calculation system 1206 generatesand/or applies an adaptive filter to the signal. In some embodiments,the adaptive filter removes noise from the signal using one or moreother signals that may be related to the noise as a noise reference. Forexample, the adaptive filter may be configured to remove motion relatednoise from the signal using an accelerometer signal as a noisereference. In some embodiments, motion information may be captured by anaccelerometer along three axis (e.g., x, y, and z-axis). Motion alongeach access may be captured by a component of the accelerometer. Invarious embodiments, the blood pressure calculation system calculates asum of the three accelerometer components, and uses the sum as a noisereference. Alternately, the blood pressure calculation system 1206 maydetermine the largest varying component and uses that component as thereference. In some embodiments, the blood pressure calculation systemmay use each component successively to form three adaptive filters insequence. In some embodiments, the pre-processing module generatesand/or applies the adaptive filter.

In step 1546, the blood pressure calculation system 1206 outputs afiltered signal (i.e., the signal filtered by some or all of the steps1532-1544). In some embodiments, the pre-processing module 1418 outputsthe filtered signal.

FIG. 15C depicts a blocks diagram 1550 of an example filtering system1552 for filtering signals according to some embodiments. The filteringsystem 1552 includes an adaptive filter 1554 that may be continuouslyupdated. The adaptive filter 1554 may be dynamically modified such thatits convolution with the noise reference 1556 creates a noise componentthat is maximally similar to the motion related noise in the signal 1558corrupted with motion noise. The filtering system 1552 may be configuredto optimize the adaptive filter 1552 to minimize the output signal 1560from the adaptive filter 1552. For example, the output signal 1560 maybe minimal when a filtered version 1562 of the noise reference 1556 hasremoved a threshold portion (e.g., greater than 80%) of thecorresponding noise present in the noise-corrupted signal 1558. Variousminimization methods may be used (e.g., recursive least squareminimization) to produce the minimized output signal 1560.

FIG. 16A depicts a flowchart 1600 of an example method for extractinghigh quality waves according to some embodiments. For example, some orall of the following steps may be applied to a segment (e.g., an 8second segment or 12 second segment) of each channel of a multi-channelsignal to identify subsets of waves of the multi-channel signal.

In step 1602, the blood pressure calculation system (e.g., bloodpressure calculation system 1206) identifies peak values smaller (or,less) than a mean subtracted by a standard deviation of the signal. Insome embodiments, a wave selection module performs the identification.

In step 1604, the blood pressure calculation system selects peak valleyswhose distances with a next peak valley are within a threshold value(e.g., 5%) of a heart rate value and whose intensities are within athreshold value (e.g., 5%) of each other. In some embodiments, the waveselection module performs the selection.

In step 1606, the blood pressure calculation system determines whetherthere is only one identifiable peak between the detected valleys, whoseintensity value is greater than a mean plus one standard deviation. Insome embodiments, the wave selection module performs the determination.

In step 1608, the blood pressure calculation system identifies one ormore candidate waves. For example, the one or more candidate waves maybe identified from steps 1602-1606. As used herein, it will beappreciated that candidate waves may also be referred to as “modelcandidate waves.” In some embodiments, the wave selection moduleperforms the identification.

In step 1610, the blood pressure calculation system determines if one ormore of the candidate waves satisfy a model match criterion (e.g., aGaussian mixture model or a group similarity model). An example methodusing a Gaussian mixture model is depicted in FIG. 16B, and an examplemethod using a group similarity model is depicted in FIG. 16C. In someembodiments, the wave selection module performs the determination.

In step 1612, the blood pressure calculation system selects the wavessatisfying the model match criterion. The selected waves may be groupedinto subsets of “high quality” waves. In some embodiments, the selectedwaves may be stored in a training dataset with the associated channelnumber. In some embodiments, the wave selection module performs theselection and/or storage.

FIG. 16B depicts a flowchart 1620 of an example method for extractinghigh quality waves using a Gaussian mixture model according to someembodiments. For example, some or all of the following steps may beapplied to a segment of each channel of a multi-channel signal toidentify subsets of waves of the multi-channel signal.

In step 1622, the blood pressure calculation system (e.g., bloodpressure calculation system 1206) identifies one or more candidatewaves. For example, the one or more candidate waves may be identifiedusing steps 1602-1606. In some embodiments, a wave selection moduleperforms the identification.

In step 1624, the blood pressure calculation system determines whether acandidate wave after normalization (e.g., 0-1), satisfies a bi-Gaussianmixture model and the model mismatch error is within a predetermined(e.g., user-defined) threshold value (e.g., 2%). In some embodiments,the wave selection module performs the determination. FIG. 27 depicts anexample bi-Gaussian mixture model 2700 for a PPG signal.

In step 1626, the blood pressure calculation system determines whetherthe fitted model has a reflection coefficient between minimum andmaximum possible values (e.g., 0.3-0.7), where the reflectioncoefficient is defined as the ratio of the diastolic peak to thesystolic peak values. In some embodiments, the wave selection moduleperforms the determination.

In step 1628, the blood pressure calculation system selects thecandidate waves satisfying the conditions of steps 1622-1626. Theselected candidate waves may comprise high quality waves. The highquality waves may be stored in a wave database. In some embodiments, thewave selection module performs the selection and/or storage.

FIG. 16C depicts a flowchart 1640 of an example method of method forextracting high quality waves using a group similarity model accordingto some embodiments. For example, some or all of the following steps maybe applied to a segment of each channel of a multi-channel signal toidentify subsets of waves of the multi-channel signal.

In step 1642, the blood pressure calculation system identifies one ormore candidate waves. For example, the one or more candidate waves maybe identified using steps 1602-1606. In some embodiments, a waveselection module performs the identification.

In step 1644, the blood pressure calculation system applies a similaritymeasure to determine if at least one of the one or more candidate wavesmatch one or more other waves (e.g., waves stored in a wave buffer). Insome embodiments, the wave selection module applies the similaritymeasure.

In step 1646, if at least one candidate wave matches the other waves,the blood pressure calculation system selects and identified the atleast one candidate wave as high quality (step 1648), and stores the atleast one candidate wave with the other waves (step 1650). The candidatewaves that do not match may also be stored with the other waves (step1650). In some embodiments, the wave selection performs the selection,identification, and/or storage.

FIG. 17 depicts a block diagram 1700 of a blood metrics server 906according to some embodiments. Generally, the blood metrics server 906may be configured to generate and/or store empirical blood pressuremodels, provide empirical blood pressure models to a blood pressurecalculation system, register user account and blood metrics measurementapparatus', and communicate with other systems of the system andenvironment 900. In some embodiments, the blood metrics server 906includes a management module 1702, a registration database 1704, a bloodpressure database 1706, a model generation and selection module 1708,and a communication module 1710.

The management module 1702 may be configured to manage (e.g., create,read, update, delete, or access) user account records 1714 and bloodmetrics measurement apparatus records 1716 stored in the registrationdatabase 1704, and blood pressure model records 1718 stored in the bloodpressure model database 1706. The management module 1402 may performthese operations manually (e.g., by an administrator interacting with aGUI) and/or automatically (e.g., by one or more of the modules 1708 or1710). In some embodiments, the management module 1702 comprises alibrary of executable instructions which are executable by a processorfor performing any of the aforementioned management operations. Thedatabases 1704 and 1706 may be any structure and/or structures suitablefor storing the records 1714-1718 (e.g., an active database, arelational database, a table, a matrix, an array, a flat file, and thelike).

The user account records 1714 may include a variety of informationassociated with users, user accounts, associated blood metricsmeasurement apparatus' and/or associated user devices. For example, theuser account records 1714 may store some or all of the followinginformation:

-   -   User Account Identifier: Identifier that identifies a user        account.    -   Password: Password, or other personal identifier, used to        authenticate the user account. For example, it may an        alphanumerical password, biometric data (e.g., fingerprint,        etc.). In some embodiments, readings or measurements from the        blood metrics measurement apparatus 902 may be used to        authenticate the user account.    -   Device Identifier(s): Identifier(s) that identify one or more        blood metrics measurement apparatus' associated with the user        account and/or user device.    -   Name: A name of the user.    -   DOB: A date of birth of the user.    -   Age: An age of the user.    -   Gender: Gender of the user (e.g., female, male, transgender, or        the like).    -   Weight: A weight of the user.    -   Height: A height of the user.    -   Skin color: A skin color of the user.    -   Activity Level: An activity level of the user (e.g., sedentary,        lightly active, active, very active, and so forth).    -   Geographic location: A location of the user (e.g., as determined        by a location service and/or specified by the user).    -   Blood Pressure Profile: Hypertensive, Hypotensive, Normal or        unknown.    -   Blood Glucose Profile (e.g., Diabetes information)    -   Wrist circumference: Circumference of the user's wrist.

The blood metrics measurement apparatus registration records 1716 mayinclude a variety of information associated with users, user accounts,associated blood metrics measurement apparatus' and/or associated userdevices. For example, the blood metrics measurement apparatusregistration records 1716 may store some or all of the followinginformation:

-   -   Apparatus Identifier: Identifier that identifies a blood metrics        measurement apparatus.    -   User Account Identifier: Identifier that identifies a user        account and/or user device associated with the blood metrics        measurement apparatus.    -   Geographic location: A current location of the blood metrics        measurement apparatus (e.g., as determined by a location service        and/or specified by the user).    -   Settings: One or more settings of the blood measurement metrics        apparatus. For example, some or all of the settings may be        automatically determined based on one or more user account        attributes (e.g., height, weight, etc.) and/or by the user.

The blood pressure model database 1706 may include one or more empiricalblood pressure model records 1718. The models may include various typesof empirical blood pressure models. For example, a first type may be anon-specific model which does not require calibration in order to beused to calculate arterial blood pressure values. A second type may be aspecific model which requires calibration in order to be used tocalculate arterial blood pressure values. For example, models of thesecond type may require information about the user, such age, weight,height, gender, skin color, and/or the like. In some embodiments, theblood pressure records 1718 may store some or all of the followinginformation:

-   -   Model Identifier: Identifies an empirical blood pressure model.    -   Model Type: Identifies a type of model (e.g., non-specific or        specific).    -   Model Parameters: Various model parameters (e.g., decision node        parameters) and tree structures used to calculate the arterial        blood pressure values based on the sets of feature vectors        and/or other related information (e.g., gender, age, weight,        height, skin color, etc.). Example tree structures are shown in        FIG. 26.    -   Apparatus Identifier(s): Identifier(s) that identify one or more        blood metrics measurement apparatus' using the empirical blood        pressure model.    -   User Account Identifier(s): Identifier(s) that identify one or        more user account(s) associated with the blood metrics        measurement apparatus that use the empirical blood pressure        model.

The model generation and selection module 1708 may be configured togenerate empirical blood pressure models and/or identify an empiricalblood pressure models stored in the records 1718 to provide to a bloodpressure calculation system. For example, an empirical blood pressuremodel may be identified in response to a request from a user device or ablood pressure calculation system. In various embodiments, the modelgeneration and selection module 1708 identifies a non-specific empiricalblood pressure model which does not require further calibration prior tobeing used by a blood pressure calculation system to calculate arterialblood pressure values. In some embodiments, the model generation andselection module 1708 includes some or all of the functionality of awave selection module, feature extraction module, blood pressureprocessing module, along with associated features and/or functionality(e.g., a signal database, wave database, and so forth).

In one example, an empirical blood pressure model may be identified froma set of models (e.g., stored in the records 1718) by the modelgeneration and selection module 1708 based upon a modified RandomForests algorithm using random decision trees in a regression mode. Forexample, decision trees may comprise a plurality of nodes for decisionmaking. Two examples of decision trees are shown in FIG. 26. Eachinternal node may correspond to one comparison point of the input values(e.g., one feature (F_(i), i=1, . . . , N) a feature vector) and edgesmay represent the path of the outcomes. Leaves (the end points) mayrepresent desired target points. In this example, target points areequivalent to particular blood pressure values.

In some embodiments, a specified (or, predetermined) number of decisiontrees are constructed. Each decision tree may result in a blood pressuretarget, but majority voting may give a single blood pressure estimate(or, calculation). In a model training (or, “calibration”) phase, thedecision node parameters (a₁, . . . , a_(N), b₁, . . . , b_(N), . . . ),combination of features, and the structure of the decision trees may belearned, for example, by randomly subsampling the training data and thefeatures, and tracking the error in an unobserved part of the trainingdata. In some embodiments, these parameters and tree structures maycomprise the empirical blood pressure models generated and/or stored theblood metrics server 906, and/or used by the blood pressure calculationsystem 1206 to calculate arterial blood pressure values.

In some embodiments, grown decision trees may learn highly complexpatterns. However, they may be prone to overfitting (e.g., sensitive tonoise). The model generation and selection module 1708 may address thisproblem. For example, a tree bagging (or, bootstrap aggregating)technique, in which samples are randomly selected with replacement orwithout replacement from a training list. The assignment of unseensamples may be performed by taking a majority vote. Although onedecision tree may be sensitive to noise, using multiple decision treesand averaging results may significantly decrease the variance as long asthe trees are not correlated. In some embodiments, the model generationand selection module 1708 combines tree bagging with feature baggingwhere the subset of features are also selected randomly withreplacement. In some embodiments, the model generation and selectionmodule 1708 may randomly subsample the training dataset withoutreplacement. In some embodiments, the model generation and selectionmodule 1708 may include several parameters to be tuned for a minimumnumber of leaves and/or number of trees.

In some embodiments, during a model calibration phase, the datasetscoming from different subjects may be randomly partitioned to trainingsets and test sets. In some embodiments, generally, 70-80% of thedatasets may be used in training, and the datasets of the same subjectmay not be both training and testing sets, i.e., test sets and trainingsets should be disjointed. If the size of the data (number of patientsor users) is limited (e.g., ≦150), a bucketwise randomization may beapplied (e.g., to help sure that there is enough training data forcertain ranges of blood pressure). For example, the bucket edges may beselected as 80, 100, 130, 160, 180, 230. Then, for example, randompartitioning may be separately applied to data sets within a certainbucket so that the ratio of training and test samples will be the same.

In some embodiments, the parameters of the tree bagging technique areoptimized using k-fold cross validation. Generally, in k-fold crossvalidation, the existing dataset may be randomly partitioned intotraining and testing k-times (e.g., k≧1). This may be done, for example,to decrease the bias of the results to the selected test and trainingsets. Error metrics between the ground truth and estimated bloodpressure values in test dataset are averaged k-times. Those metrics mayinclude, and are not limited to, mean square error (MSE, ExampleEquation 1, shown below), root mean square error (RMSE, Example Equation2, shown below), median absolute deviation (MAD, Example Equation 3,shown below), and/or coefficient of determination (R², Example Equation4, shown below). In some embodiments, the model giving optimal (or, thelowest) error values may be selected and used by the blood pressurecalculation system 1206 to calculate arterial blood pressure values.

$\begin{matrix}{{{MSE}\left( \hat{y} \right)} = {\frac{1}{N}{\sum\limits_{i = 1}^{N}\left( {y_{i} - {\hat{y}}_{i}} \right)^{2}}}} & {{Example}\mspace{14mu} {Equation}\mspace{14mu} 1} \\{{{RMSE}\left( \hat{y} \right)} = \sqrt{\frac{1}{N}{\sum\limits_{i = 1}^{N}\left( {y_{i} - {\hat{y}}_{i}} \right)^{2}}}} & {{Example}\mspace{14mu} {Equation}\mspace{14mu} 2} \\{{{MAD}\left( \hat{y} \right)} = {{median}\left( {{y - \hat{y}}} \right)}} & {{Example}\mspace{14mu} {Equation}\mspace{14mu} 3} \\{{R^{2}\left( \hat{y} \right)} = {1 - \frac{{MSE}\left( \hat{y} \right)}{{var}(y)}}} & {{Example}\mspace{14mu} {Equation}\mspace{14mu} 4}\end{matrix}$

In some embodiments, the model generation and selection module 1708minimizes overfitting. For example, each fold (or, k-fold) may beindividually trained. Feature sets may be identified for each foldthrough backward or floating search optimizations where features areadded or removed (e.g., to improve cost). In some embodiments, in orderto enable cross-validation (CV) or bootstrapping (BS) performance matchan unseen test set accurately, a measure of test-train cost may becalculated. This may be performed, for example, to inform featureselection approaches for adding or removal of features. For example,Test-Train cost may be defined as

${C_{TT} = {1 - \frac{{RMSE}_{Train}}{{RMSE}_{Test}}}},$

where C_(TT) may be close to “0” if test error and train error trackedeach other closely, and may be “1” if train error was smaller than test(e.g., overfitting). This may be applied, for example, when a newfeature is added (e.g., not present in the current optimal feature set),or when an existing featured is removed (e.g., from the current optimalfeature set). In some embodiments, the corresponding condition whichmust be met to continue adding or removing a feature may be calculatedas current cost <(previous cost+α F C_(TT)), where α is the weightassociated with the Test-Train cost, and F is “1” for testing featureremoval and “−1” for testing feature addition. While this may have theeffect of reducing model complexity while increasing RMSE, modelcomplexity is not directly minimized, which could have the desiredeffect of allowing model complexity to be relatively large withoutpenalty as long as C_(TT) is relatively small.

In some embodiments, the communication module 1710 may be configured tosend requests to and receive data from one or a plurality of systems.The communication module 1710 may send requests to and receive data froma systems through a network or a portion of a network. Depending uponimplementation-specific or other considerations, the communicationmodule 1710 may send requests and receive data through a connection(e.g., the communication network 908, and/or the communication link910), all or a portion of which may be a wireless connection. Thecommunication module 1710 may request and receive messages, and/or othercommunications from associated systems.

FIG. 18 depicts a flowchart 1800 of an example method of operation of ablood metrics server (e.g., blood metrics server 906) according to someembodiments.

In step 1802, the blood metrics server receives and processes useraccount and/or blood pressure measurement apparatus registrationrequests. In some embodiments a communication module (e.g.,communication module 1712) receives the requests. An exampleregistration method is shown in FIG. 20.

In step 1804, the blood metrics server receives and processes a requestfor an empirical blood pressure model. In some embodiments, thecommunication module receives the request from a user device (e.g., userdevice 904) and/or blood pressure calculation system (e.g., bloodpressure calculation system 1206). For example, the user device and/orblood pressure calculation system may periodically request an updatedmodel.

In step 1806, the blood metrics server selects an empirical bloodpressure model. For example, the model may be selected in response tothe request, although in some embodiments, the blood metrics server mayautomatically select a model in order to push down an updated model tothe user device. In some embodiments, a model generation and selectionmodule (e.g., model selection 1708) performs the selection.

In step 1808, the blood metrics server provides the selected empiricalblood pressure to the user device and/or blood pressure calculationsystem. In some embodiments, the communication module provides theselected empirical blood pressure model.

FIG. 19 depicts a flowchart 1900 of an example method of operation of ablood metrics server (e.g., blood metrics server 906) according to someembodiments.

In step 1902, the blood metrics server receives a first signal (e.g., asingle-channel or multi-channel PPG signal) and a second signal (e.g., asingle-channel or multi-channel PPG signal) for each of a plurality ofusers (e.g., training subjects). For example, the first signal maycomprise a 7-channel PPG signal generated from light energy emitted atseven different wavelengths (e.g., 523 nm, 590 nm, 623 nm, 660 nm, 740nm, 850 nm, 940 nm) from one or more light sources (e.g., sevendifferent LEDs), and the second signal may comprise a single-channel PPGsignal generated from light energy generated from an additional lightsource (e.g., LED) at the same, or substantially similar, wavelength asone the wavelengths of the first signal. Using multi-channel signalsand/or different light sources may help ensure, for example, that goodquality signals may be obtained in a variety of circumstances (a usermoving, walking, running, sleeping, and so forth). In some embodiments,a communication module (e.g., communication module 1712 receives thefirst and second signals from a blood metrics measurement apparatus(e.g., blood metrics measurement apparatus 902) and/or other bloodpressure measurement devices, such as other types of non-invasivedevices (e.g., sphygmomanometer) and/or invasive devices (e.g.,catheters, tubes, etc.).

In step 1904, the blood metrics server pre-processes (or filters) thefirst and second signals. In some embodiments, a pre-processing modulefilters the first and second signals.

In step 1906-1908, the blood metrics server identifies, for each of theplurality of users, a first subset of waves (or, “high quality” waves)from a first set of waves of the first signal and a second subset ofwaves (or, “high quality” waves) from a second set of waves of thesecond signal, each of the first subset of waves representing a separateapproximation of an average of the first set of waves over apredetermined amount of time and each of the second subset of wavesrepresenting a separate approximation of an average of the second set ofwaves over the predetermined amount of time. In some embodiments, amodel generation and selection module (e.g., model generation andselection module 1708) identifies the subsets of waves.

In step 19010-1912, the blood metrics server generates, for each of theplurality of users, a first set of feature vectors and a second set offeature vectors. The first set of feature vectors may be generated fromthe first subset of waves, and the second set of feature vectors may begenerated from the second subset of waves. Each of the feature vectorsmay include measurement values and metric values. For example, themeasurement values may correspond to amplitude (e.g., peak-to-peakamplitude, peak amplitude, semi-amplitude, root mean square amplitude,pulse amplitude, etc.) or location points of a particular wave (e.g., acorresponding high quality wave), and the metric values may be generatedfrom metric functions that use at least one of the measurement values.In some embodiments, the model generation and selection module generatesthe sets of feature vectors.

In step 1914, the blood metrics server generates a plurality ofempirical blood pressure models based on the feature vectors. In someembodiments, the model generation and selection module generates themodels.

In step 1916, the blood metrics server identifies a particular one ofthe plurality of empirical blood pressure models. The identified modelmay be used to calculate arterial blood pressure values withoutrequiring further calibration (e.g., a non-specific type of empiricalblood pressure model). In some embodiments, the model generation andselection module performs the identification.

In step 1918, the blood metrics server stores the particular one of theplurality of empirical blood pressure models. In some embodiments, amanagement module (e.g., management module 1702) stores the particularmodel in a database (e.g., blood pressure model database 1706).

FIG. 20 depicts a flowchart 2000 of an example method of operation of ablood metrics server (e.g., blood metrics server 906) according to someembodiments.

In step 2002, the blood metrics server receives a user accountregistration request from a user device (e.g., user device 904) via acommunication network (e.g., communication network 908). The useraccount registration request may include, for example, a username (e.g.,“jsmith2015), password, full name (e.g., “John Smith”), birthdate,gender, physical characteristics (e.g., height, weight, etc.), and soforth. In some embodiments a communication module (e.g., communicationmodule 1716) receives the user account registration request.

In step 2004, if the blood metrics server approves the registrationrequest, the blood metrics server may create a new user accountregistration record (e.g., user account registration record 1714) in aregistration database (e.g., registration database 1704) and/or anaccount for the user. In some embodiments, a management module (e.g.,management module 1702) creates the user account registration record.

In step 2006, the blood metrics server receives a log-in request fromthe user device. The log-in request may include, for example, theusername and password. If the log-in credentials are correct, the bloodmetrics server logs the user account into the user device. In someembodiments the communication module receives the log-in request.

In step 2008, the blood metrics server receives a blood metricsmeasurement apparatus registration request from the user device. Theblood metrics measurement apparatus registration request may include,for example, an apparatus identifier that identifies the blood metricsmeasurement apparatus, and a user account identifier associated the useraccount and/or user device. The apparatus identifier may be obtained bythe user device by a variety of methods such as scanning a physicalfeature (e.g., a tag, code, or the like) of the blood metricsmeasurement apparatus, entering the identifier manually via the userdevice, and/or the like. In some embodiments the communication modulereceives the blood metrics measurement apparatus registration request.

In step 2010, the blood metrics server updates the registration databasewith the blood metrics measurement apparatus registration request byeither creating a new record (e.g., a record 1716) or, if the apparatusidentifier is already stored in one of the records (e.g., records 1716),updating that particular record. In some embodiments, the managementmodule updates the registration database.

In step 2012, the blood metrics server provides a registration successmessage to the user device when the registration database has beenupdated. In some embodiments the communication module provides themessage.

FIG. 21 depicts an example noisy PPG signal 2100 and an example filteredPPG signal 2150 according to some embodiments.

FIG. 22 depicts an example set of waves 2200 of a PPG signal and anexample high quality wave 2202 selected from the set of waves 2200according to some embodiments. FIG. 22 further depicts an examplebi-Gaussian fitted signal 2204 according to some embodiments.

FIG. 23 depicts example feature points 2302 a-u of a wave 2300 accordingto some embodiments. For example, the feature points 2302 a-u maycomprise location points and/or amplitudes. In some embodiments, some orall of the features points 2302 a-u may correspond to measurement valueswhich may be used by one or more metric functions.

FIGS. 25A-C show an example selected high quality wave 2500, the firstderivative 2502 of the selected high quality wave 2500, and the secondderivative 2504 of the selected high quality wave 2500 according to someembodiments.

FIG. 26 depicts example tree structures 2602 and 2604 of an exampleempirical blood pressure calculation model 2600 according to someembodiments.

It will be appreciated that a “user device,” “apparatus,” “server,”“module,” “system,” and/or “database” may comprise software, hardware,firmware, and/or circuitry. In one example, one or more softwareprograms comprising instructions capable of being executable by aprocessor may perform one or more of the functions of the user devices,servers, modules, systems, and/or databases described herein. In anotherexample, circuitry may perform the same or similar functions.Alternative embodiments may comprise more, less, or functionallyequivalent user devices, apparatus, servers, modules, systems, and/ordatabases, and still be within the scope of present embodiments. Forexample, the blood metrics measurement apparatus 902 may include some orall of the functionality of the user device 904 (e.g., user interfacemodule 1202, blood pressure calculation system 1206, etc.), the bloodmetrics server 906 may include some or all of the functionality of theblood pressure calculation system 1206, and so forth.

The present invention(s) are described above with reference to exampleembodiments. It will be appreciated that various modifications may bemade and other embodiments may be used without departing from thebroader scope of the present invention(s). Therefore, these and othervariations upon the example embodiments are intended to be covered bythe present invention(s).

1. A system comprising: a wearable member including: an energytransmitter configured to project energy at a first wavelength andenergy at a second wavelength into tissue of a user; and an energyreceiver configured to generate a first signal based on a first receivedportion of the energy at the first wavelength and a second signal basedon a second received portion of the energy at the second wavelength, thefirst received portion of energy and the second received portion ofenergy each being received through the tissue of the user; and a bloodpressure calculation system including: a pre-processing moduleconfigured to filter noise from the first signal and the second signal;a wave selection module configured to identify a first subset of wavesfrom a first set of waves of the first signal and a second subset ofwaves from a second set of waves of the second signal, each of the firstsubset of waves representing a separate approximation of an average ofthe first set of waves over a predetermined amount of time and each ofthe second subset of waves representing a separate approximation of anaverage of the second set of waves over the predetermined amount oftime; a feature extraction module configured to generate a first set offeature vectors and a second set of feature vectors, the first set offeature vectors generated from the first subset of waves, the second setof feature vectors generated from the second subset of waves, whereineach of the feature vectors of the first set of feature vectors and thesecond set of feature vectors include measurement values and metricvalues, the measurement values corresponding to amplitude or locationpoints of a particular wave, the metric values generated from metricfunctions that use at least one of the measurement values; a bloodpressure processing module configured to calculate an arterial bloodpressure value based on the first set of feature vectors, the second setof feature vectors, and an empirical blood pressure calculation model,the empirical blood pressure calculation model configured to receive thefirst set of feature vectors and the second set of feature vectors asinput values; and a communication module configured to provide a messageincluding or being based on the arterial blood pressure value.
 2. Thesystem of claim 1, wherein the pre-processing module is configured tofilter noise from the first signal and second signal comprises thepre-processing module configured to filter noise using an adaptivefilter configured to remove motion noise from the first and secondsignals.
 3. The system of claim 1, wherein the energy transmitterincludes a first light source and a second light source, the first lightsource configured to project the energy at the first wavelength, thesecond light source configured to project the energy at the secondwavelength.
 4. The system of claim 3, wherein the first light source andthe second light source are spaced at a predetermined distance from eachother, and each of the first and second light sources are associatedwith a different corresponding photodiode energy receiver.
 5. The systemof claim 4, wherein the measurement values comprise a transit timedetermined based on a time for blood to transit the predetermineddistance between the first and second light sources.
 6. The system ofclaim 3, wherein the measurement values include any of wave peaklocations or amplitudes, or wave valley locations or amplitudes.
 7. Thesystem of claim 3, wherein the measurement values include any of anassociated wave's first or higher order derivative peak locations oramplitudes, the associated wave's first or higher order derivativevalley locations or amplitudes, or first or higher order moments of theassociated wave.
 8. The system of claim 3, wherein the metric functionsinclude one or more particular metric functions that calculate adistance between two measurement values.
 9. The system of claim 3,wherein the energy projected by the first light source and the energyprojected by second light source each have the same wavelength.
 10. Thesystem of claim 7, wherein the feature extraction module is furtherconfigured to: determine a phase shift between the first signal and thesecond signal; calculate, based on the phase shift, any of a pulse wavevelocity or a pulse transit time based on the predetermined distance;and the blood pressure calculation module is further configured tocalculate the arterial blood pressure value based on first set offeature vectors, the second set of feature vectors, any of the pulsewave velocity or the pulse transit time, the empirical blood pressurecalculation model, the empirical blood pressure calculation modelfurther configured to receive the first set of feature vectors, thesecond set of feature vectors, and any of the pulse wave velocity or thepulse transit time as input.
 11. The system of claim 1, wherein thefirst signal and the second signal each comprise a photoplethysmogram(PPG) signal.
 12. A method comprising: projecting, at an energytransmitter, energy at a first wavelength and energy at a secondwavelength into tissue of a user; generating, at the energy transmitter,a first signal based on a first received portion of the energy at thefirst wavelength and a second signal based on a second received portionof the energy at the second wavelength, the first received portion ofenergy and the second received portion of energy each being receivedthrough the tissue of the user; filtering, at the blood pressurecalculation system, noise from the first signal and second signal;identifying, at a blood pressure calculation system, a first subset ofwaves from a first set of waves of the first signal and a second subsetof waves from a second set of waves of the second signal, each of thefirst subset of waves representing a separate approximation of anaverage of the first set of waves over a predetermined amount of timeand each of the second subset of waves representing a separateapproximation of an average of the second set of waves over thepredetermined amount of time; generating, at the blood pressurecalculation system, a first set of feature vectors and a second set offeature vectors, the first set of feature vectors generated from thefirst subset of waves, the second set of feature vectors generated fromthe second subset of waves, wherein each of the feature vectors of thefirst set of feature vectors and the second set of feature vectorsinclude measurement values and metric values, the measurement valuescorresponding to amplitude or location points of a particular wave, themetric values generated from metric functions that use at least one ofthe measurement values; calculating, at the blood pressure calculationsystem, an arterial blood pressure value based on the first set offeature vectors, the second set of feature vectors, and an empiricalblood pressure calculation model, the empirical blood pressurecalculation model configured to receive the first set of feature vectorsand the second set of feature vectors as input values; and providing,from the blood pressure calculation system, a message including or beingbased on the arterial blood pressure value.
 13. The method of claim 12,wherein the filtering noise from the first signal and second signalcomprises filtering noise from the first signal and second signal usingan adaptive filter configured to remove motion noise from the firstsignal and the second signal.
 14. The method of claim 12, wherein theenergy transmitter includes a first light source and a second lightsource, the first light source configured to project the energy at thefirst wavelength, the second light source configured to project theenergy at the second wavelength.
 15. The method of claim 14, wherein thefirst light source and the second light source are spaced at apredetermined distance from each other, and each of the first and secondlight sources are associated with a different corresponding photodiodeenergy receiver.
 16. The method of claim 15, wherein the measurementvalues comprise a transit time determined based on a time for blood totransit the predetermined distance between the first and second lightsources.
 17. The method of claim 14, wherein the measurement valuesinclude any of wave peak locations or amplitudes, or wave valleylocations or amplitudes.
 18. The method of claim 14, wherein themeasurement values include any of an associated wave's first or higherorder derivative peak locations or amplitudes, the associated wave'sfirst or higher order derivative valley locations or amplitudes, orfirst or higher order moments of the associated wave.
 19. The method ofclaim 14, wherein the metric functions include one or more particularmetric functions that calculate a distance between two measurementvalues.
 20. The method of claim 14, wherein the energy projected by thefirst light source and the energy projected by second light source eachhave the same wavelength.
 21. The method of claim 18, wherein thefeature extraction module is further configured to: determine a phaseshift between the first signal and the second signal; calculate, basedon the phase shift, any of a pulse wave velocity or a pulse transit timebased on the predetermined distance; and the blood pressure calculationmodule is further configured to calculate the arterial blood pressurevalue based on first set of feature vectors, the second set of featurevectors, any of the pulse wave velocity or the pulse transit time, theempirical blood pressure calculation model, the empirical blood pressurecalculation model further configured to receive the first set of featurevectors, the second set of feature vectors, and any of the pulse wavevelocity or the pulse transit time as input.
 22. A system comprising: aprocessor; and memory storing instructions that, when executed by theprocessor, cause the processor to: receive a first signal and a secondsignal, the first signal being based on a first received portion ofenergy having been previously projected at a first wavelength intotissue of a user, the second signal being based on a second receivedportion of energy having been previously projected at a secondwavelength into the tissue of the user; filter noise from the firstsignal and the second signal, the noise including motion related noise;identify a first subset of waves from a first set of waves of the firstsignal and a second subset of waves from a second set of waves of thesecond signal, each of the first subset of waves representing a separateapproximation of an average of the first set of waves over apredetermined amount of time and each of the second subset of wavesrepresenting a separate approximation of an average of the second set ofwaves over the predetermined amount of time; generate a first set offeature vectors and a second set of feature vectors, the first set offeature vectors generated from the first subset of waves, the second setof feature vectors generated from the second subset of waves, whereineach of the feature vectors of the first set of feature vectors and thesecond set of feature vectors include measurement values and metricvalues, the measurement values corresponding to amplitude or locationpoints of a particular wave, the metric values generated from metricfunctions that use at least one of the measurement values; calculate anarterial blood pressure value based on the first set of feature vectors,the second set of feature vectors, and an empirical blood pressurecalculation model, the empirical blood pressure calculation modelconfigured to receive the first set of feature vectors and the secondset of feature vectors as input values; and provide a message includingor being based on the arterial blood pressure value.